日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

gee学习笔记 第二天

發布時間:2024/1/18 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 gee学习笔记 第二天 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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学习笔记 第二天的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。