gee学习笔记 第二天

文章目录

  • gee学习笔记 第二天
  • 前言
  • 一、继续熟悉jupyter lab notebook
  • 二、获取和找到数据
    • 1、选定区域和设置过滤器

前言

第二天
学习如何准备水煮鱼的材料,也就是准备和简单的处理项目所需的原始数据


一、继续熟悉jupyter lab notebook

还是打开miniconda的命令行,输入两行代码,打开jupyter lab

在摸索之后我才明白,每一行代码块都需要单独的运行,比如说第一行的import geemap,如果说你不去点击运行这一行代码,geemap的库就无法引入,后续代码就会报错.第二行代码和第一天一样需要添加代理获得gee的api.

如图片所示ipyleaflet是一种地图的模式,也是吴秋生老师所说的用的较多的一种模式

可以通过上图的代码直接打开对应坐标缩放比例的地图,在python中单独运行变量就会将变量内容打印出来,所以在代码块中才会单独打Map,
如果一次性打开了几个地图,那么对这几个地图中的一个的操作也会影响到其他的地图,比如说缩放一个地图,那么其他的所以地图也会耕者缩放.
这个是测量的图标,我们可以使用这个功能来获得经纬度.

这个是draw_ctrl
这个是data_ctrl
这个就是toolbar_ctrl
我们可以设置在地图上要不要这几个控件.
Map = geemap.Map(data_ctrl=False, toolbar_ctrl=False, draw_ctrl=False) Map

轻便模式,只有放大缩小.
Map = geemap.Map(lite_mode=True) Map

同理运行Folium如下:

不在库中的地图可以通过如下的方式添加

二、获取和找到数据


这里需要先初试ee的服务,而且
image = ee.Image('USGS/SRTMGL1_003')意为获取id为USGS/SRTMGL1_003的数据,但是这个数据是存储在gee的云服务器上的,我们需要这个数据的id来找到他.
要想看到这个数据的内部,不能单纯的输入image这样的话只是会把image这个指针指向的地址打印出来,如果想要看到数据内部的具体信息我们需要
image.getInfo()

如果还需要可视化的使用如下的代码,整体的流程如下,首先找到想要获取的数据的id,获得id之后访问服务器的数据,选用合适的可视化方案,将图层添加到地图上,显示地图.

Map = geemap.Map(center=[21.79, 70.87], zoom=3)
image = ee.Image('USGS/SRTMGL1_003')
vis_params = {'min': 0,'max': 6000,'palette': ['006633', 'E5FFCC', '662A00', 'D8D8D8', 'F5F5F5'],
}
Map.addLayer(image, vis_params, 'SRTM')
Map

结果如下图:


这是数据集和数据集的可视化

Map = geemap.Map()
collection = ee.ImageCollection('COPERNICUS/S2_SR')
image = collection.median()//这里是取中值vis = {'min': 0.0,'max': 3000,'bands': ['B4', 'B3', 'B2'],
}Map.setCenter(83.277, 17.7009, 12)
Map.addLayer(image, vis, 'Sentinel-2')
Map

运行结果如下:

1、选定区域和设置过滤器

首先我们打开一副地图并选定区域(左边的工具栏可以用矩形,圆圈,选点等等)

Map.user_roi可以获得选定区域的信息,下面使用getInfo方法打印出来

使用过滤器设置过滤时间,然后打印数据集筛选之后的数据数量

collection = ee.ImageCollection('COPERNICUS/S2_SR').filterDate('2021-01-01','2021-02-01')
//filterDate中的2021-02-01这一天不包括在内,也就是只有一月的数据
collection.size().getInfo()

下面将前面选定的区域信息也加到过滤器中

collection = ee.ImageCollection('COPERNICUS/S2_SR').filterDate('2021-01-01','2021-02-01').filterBounds(Map.user_roi)
collection.size().getInfo()


可以看到数据的数量大大的减少了
下面是老师的完整代码示例,可以修改vis的参数改变可视化的结果,包括波段、透明度、最小最大值等等。

Map = geemap.Map()
collection = (ee.ImageCollection('COPERNICUS/S2_SR').filterDate('2021-01-01', '2022-01-01').filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 5))
)
image = collection.median()vis = {'min': 0.0,'max': 3000,'bands': ['B4', 'B3', 'B2'],
}Map.setCenter(83.277, 17.7009, 12)
Map.addLayer(image, vis, 'Sentinel-2')
Map

下面演示如何搜索并添加数据到图层上,最后显示在地图里。

第一步先打开一个地图

第二部打开搜索找到需要的数据

第三步选择参数生成可视化图层,加载到地图上

Map = geemap.Map(center=[28.00142, -81.7424], zoom=13)
Map.add_basemap('HYBRID')
image=ee.Image('CGIAR/SRTM90_V4')
Map.addLayer(image,{'min':0,'max':5000,'palette':'terrain'},'SRTM')
Map

gee学习笔记 第二天相关推荐

  1. GEE学习笔记一账号注册(只需要用谷歌邮箱就能注册成功)

    小白辰某的GEE学习笔记一 gee账号注册的雷,我先踩为敬 为了申请成功我真的是看遍了知乎和csdn上所有的文章,以下随便写写我踩的雷点.本人写的小文章,统统都是纯干货,简单明了,新手必备(不吹不黑你 ...

  2. 《Go语言圣经》学习笔记 第二章 程序结构

    Go语言圣经学习笔记 第二章 程序结构 目录 命名 声明 变量 赋值 类型 包和文件 作用域 注:学习<Go语言圣经>笔记,PDF点击下载,建议看书. Go语言小白学习笔记,几乎是书上的内 ...

  3. 视觉SLAM十四讲学习笔记-第二讲-开发环境搭建

    专栏系列文章如下: 视觉SLAM十四讲学习笔记-第一讲_goldqiu的博客-CSDN博客 视觉SLAM十四讲学习笔记-第二讲-初识SLAM_goldqiu的博客-CSDN博客 ​​​​​​​ lin ...

  4. 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第二十一课:Cocos2D-X网格特效1-3

    [麦可网]Cocos2d-X跨平台游戏开发---学习笔记 第二十一课:Cocos2D-X网格特效1-3 ================================================ ...

  5. PhalAPI学习笔记 ——— 第二章接口服务请求

    PhalAPI学习笔记 --- 第二章接口服务请求 前言 接口服务请求 接口服务请求案例 自定义接口路由 开启匹配路由 配置路由规则 nginx apache 服务请求 结束语 前言 公司业务需要转学 ...

  6. Python学习笔记第二十九天(N维数组(ndarray))

    Python学习笔记第二十九天 N维数组(ndarray) 构建阵列 索引阵列 ndarray的内部内存布局 阵列属性 内存布局 数据类型 其他属性 阵列接口 ctypes外部功能接口 Array方法 ...

  7. [go学习笔记.第二章] 2.go语言的开发工具以及安装和配置SDK

    一.工具介绍: 1.Visual Studio Code 一个运行于Mac,Windows,和linux上的,默认提供Go语言的语法高亮的IED,可以安装Go语言插件,还可以支持智能提示,编译运行等功 ...

  8. 小吴的《机器学习 周志华》学习笔记 第二章 模型评估与选择

    小吴的<机器学习 周志华>学习笔记 第二章 模型评估与选择 上一周我们介绍了第一章的基础概念,这一次将带来第二章的前三节.后面的2.4 比较检验与2.5 偏差与方差,涉及概率论与数理统计概 ...

  9. 小吴的《机器学习 周志华》学习笔记 第二章 2.4 比较检验、2.5 偏差与方差

    小吴的<机器学习 周志华>学习笔记 第二章 2.4 比较检验. 2.5 偏差与方差 2.4 比较检验 上一周提到了实验的评价方法和性能量度,步骤简单可以看成:先使用某种实验评估方法测得学习 ...

最新文章

  1. Windows 10下安装Anaconda(Anaconda3-5.1.0)
  2. oracle 包 解密,oracle9.1的加密解密包的用法
  3. 需求规格说明书1.0
  4. 2011年白银机会远超黄金 四妙招帮您赚大
  5. python假设有三个列表_python基础三(列表和元组)
  6. 魅族16T刚发布就被锤!德国莱茵TÜV:它没通过我的认证
  7. VB:将短文件名格式转成长文件名
  8. Nginx+Tomcat负载均衡群集
  9. react替换元素节点_React万字长文面试题梳理
  10. C语言获取linux接口状态,[linux] C语言Linux系统编程-TCP通信的11种状态
  11. 使用PHP,求算100-999以内的水仙花数--详细
  12. JAVA 方法知识总结
  13. VisionPro如何引用VPP?
  14. 手机上如何将图片压缩到最小
  15. 今天不聊技术,聊聊如何成为一个靠谱的软件从业人员
  16. 从mysql2ch到synch,一次重构与升级
  17. 回味陈年老酒----DOS
  18. java 根据pdf模板表单生成对应pdf(用于荣誉证书等生成)
  19. adb tcpip:5555,appium 运行报错
  20. 为什么SpringBoot jar包中的文件读取不到?

热门文章

  1. Cannot load Counter Name data because an invalid index
  2. Open Source Threat Intelligence
  3. 201421430029巩耀阳
  4. JavaWeb项目——旅游门户网站及后台管理系统
  5. Windows菜单函数 - EnableMenuItem
  6. 支付宝小程序订单倒计时分秒
  7. Linux使用vi编辑文件 出现E325:ATTENTION错误
  8. 推荐你的最佳睡眠时间
  9. 拒绝服务攻击-tfn2k
  10. javascript购物车详解实现购物车完整功能(附效果图,完整代码)