使用Geemap与Google Earth Engine进行交互式地理空间分析

使用Geemap与Google Earth Engine进行交互式地理空间分析

geemap geemap 项目地址: https://gitcode.com/gh_mirrors/gee/geemap

概述

Google Earth Engine (GEE) 是一个强大的云平台,拥有海量的卫星影像和地理空间数据集。Geemap是一个基于Python的开源工具,它为用户提供了在Jupyter环境中与GEE交互的直观界面。本文将介绍如何使用Geemap进行地理空间数据的可视化、分析和处理。

环境准备

安装Geemap

%pip install geemap

导入必要库

import ee
import geemap

认证Earth Engine

在使用前需要完成GEE的认证:

geemap.ee_initialize()

创建交互式地图

Geemap提供了简单的方法来创建交互式地图:

# 创建默认地图
Map = geemap.Map()
Map

可以自定义地图的中心点、缩放级别和尺寸:

Map = geemap.Map(center=[40, -100], zoom=4, height=600)
Map

添加底图

Geemap内置了多种底图供选择:

使用内置底图

# 使用卫星混合底图
Map = geemap.Map(basemap="HYBRID")
Map

添加XYZ瓦片图层

Map = geemap.Map()
Map.add_tile_layer(
    url="https://mt1.google.com/vt/lyrs=p&x={x}&y={y}&z={z}",
    name="Google Terrain",
    attribution="Google",
)
Map

添加WMS服务

Map = geemap.Map(center=[40, -100], zoom=4)
url = "https://www.mrlc.gov/geoserver/mrlc_display/NLCD_2019_Land_Cover_L48/wms?"
Map.add_wms_layer(
    url=url,
    layers="NLCD_2019_Land_Cover_L48",
    name="NLCD 2019",
    format="image/png",
    attribution="MRLC",
    transparent=True,
)
Map

Earth Engine数据类型

影像(Image)

# 加载SRTM高程数据
image = ee.Image("USGS/SRTMGL1_003")
image

可视化影像

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

影像集合(ImageCollection)

# 加载Sentinel-2数据
collection = ee.ImageCollection("COPERNICUS/S2_SR")

过滤和可视化影像集合

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

要素集合(FeatureCollection)

# 加载美国道路数据
Map = geemap.Map()
fc = ee.FeatureCollection("TIGER/2016/Roads")
Map.setCenter(-73.9596, 40.7688, 12)
Map.addLayer(fc, {}, "Census roads")
Map

过滤要素集合

Map = geemap.Map()
states = ee.FeatureCollection("TIGER/2018/States")
fc = states.filter(ee.Filter.eq("NAME", "Louisiana"))
Map.addLayer(fc, {}, "Louisiana")
Map.centerObject(fc)
Map

样式化要素集合

Map = geemap.Map(center=[40, -100], zoom=4)
states = ee.FeatureCollection("TIGER/2018/States")
style = {"color": "0000ffff", "width": 2, "lineType": "solid", "fillColor": "FF000080"}
Map.addLayer(states.style(**style), {}, "US States")
Map

总结

Geemap为Google Earth Engine提供了一个强大的Python接口,使得地理空间数据的可视化、分析和处理变得更加简单高效。通过本文介绍的基础功能,用户可以快速上手进行交互式的地理空间分析。

geemap geemap 项目地址: https://gitcode.com/gh_mirrors/gee/geemap

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

彭宏彬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值