前言
分区统计(zonal statistics)工具是提供一个区域边界后,可以统计区域内的平均值(MEAN), 最大值(MAXIMUM), 最小值(MINIMUM), 中位数(MEDIAN), 标准差(STD), 极小极大值(MIN_MAX), 方差(VARIANCE), 求和(SUM),并且可以导出为csv, shp, json, kml, kmz格式。
1 导入库并显示地图
!pip install geemap #安装geemap库
import ee
import geemap
import os
geemap.show_youtube('ou-Xm3CLitM')
Map = geemap.Map()
Map
2 加载数据并显示
# 添加Earth Engine DEM数据
dem = ee.Image('USGS/SRTMGL1_003')
# 设置可视化参数
dem_vis = {
'min': 0,
'max': 4000,
'palette': ['006633', 'E5FFCC', '662A00', 'D8D8D8', 'F5F5F5'],
}
# Add Earth Engine DEM to map
Map.addLayer(dem, dem_vis, 'SRTM DEM')
# Add Landsat data to map
landsat = ee.Image('LANDSAT/LE7_TOA_5YEAR/1999_2003')
landsat_vis = {'bands': ['B4', 'B3', 'B2'], 'gamma': 1.4}
Map.addLayer(landsat, landsat_vis, "LE7_TOA_5YEAR/1999_2003")
#添加州边界数据
states = ee.FeatureCollection("TIGER/2018/States")
Map.addLayer(states, {}, 'US States')
显示结果
3 分区统计(zonal statistics)工具并下载
out_dir = os.path.join(os.path.expanduser('~'), 'Downloads') #设置输出路径,没有则创建路径
out_dem_stats = os.path.join(out_dir, 'dem_stats.csv')
if not os.path.exists(out_dir):
os.makedirs(out_dir)
# Allowed output formats: csv, shp, json, kml, kmz 允许的输出格式
# Allowed statistics type: MEAN, MAXIMUM, MINIMUM, MEDIAN, STD, MIN_MAX, VARIANCE, SUM 允许的统计类型
geemap.zonal_statistics(dem, states, out_dem_stats, statistics_type='MEAN', scale=1000) #DEM zonal_statistics
out_landsat_stats = os.path.join(out_dir, 'landsat_stats.csv') #这是统计landsat数据
geemap.zonal_statistics(
landsat, states, out_landsat_stats, statistics_type='SUM', scale=1000
)
geemap.create_download_link(out_dem_stats) #获取下载链接
geemap.create_download_link(out_landsat_stats)
DEM数据下载结果
LANDSAT 7数据下载结果
后记
大家如果有地信遥感方面的问题需要请教或者有项目需要合作,可以在闲 鱼软件的用户中搜索:遥感GIS工作室,请认准头像,谢谢。