geemap
一个用于 Google Earth Engine 交互式地理空间分析和可视化的 Python 包
- GitHub 仓库:https://github.com/gee-community/geemap
- 文档:https://geemap.org
- PyPI:https://pypi.org/project/geemap
- Conda-forge:https://anaconda.org/conda-forge/geemap
- 360+ GEE 笔记本示例:https://github.com/giswqs/earthengine-py-notebooks
- YouTube 上的 GEE 教程:https://youtube.com/@giswqs
- 免费软件:MIT 许可证
加入我们的 Discord 服务器 👇
致谢: geemap 项目得到了美国国家航空航天局(NASA)的支持,资助编号为 80NSSC22K1742,通过 2020 年开源工具、框架和库计划发放。
公告
由 Qiusheng Wu 撰写的《Earth Engine 和 Geemap:使用 Python 进行地理空间数据科学》一书已于 2023 年 7 月由 Locate Press 出版。如果您有兴趣购买这本书,请访问以下网址:https://locatepress.com/book/gee。
简介
Geemap是一个用于与谷歌地球引擎(GEE)进行交互式地理空间分析和可视化的Python包。GEE是一个云计算平台,拥有数千PB级的卫星图像和地理空间数据集目录。近年来,GEE在地理空间社区中变得非常流行,并在局部、区域和全球尺度上支持了众多环境应用。GEE提供JavaScript和Python API来向地球引擎服务器发送计算请求。与GEE JavaScript API全面的文档和交互式IDE(即GEE JavaScript代码编辑器)相比,GEE Python API的文档相对较少,交互式可视化结果的功能也有限。Geemap Python包的创建就是为了填补这一空白。它基于ipyleaflet和ipywidgets构建,使用户能够在基于Jupyter的环境中交互式分析和可视化地球引擎数据集。
Geemap面向希望利用Python生态系统中多样化的库和工具来探索谷歌地球引擎的学生和研究人员。它也为希望从GEE JavaScript API过渡到Python API的现有GEE用户设计。Geemap包的自动JavaScript到Python转换模块可以大大减少将现有GEE JavaScript转换为Python脚本和Jupyter笔记本所需的时间。
如需视频教程和笔记本示例,请访问示例页面。有关geemap模块和方法的完整文档,请访问API参考。
如果您发现geemap在您的研究中有用,请考虑引用以下论文来支持我的工作。感谢您的支持。
- Wu, Q., (2020). geemap: A Python package for interactive mapping with Google Earth Engine. The Journal of Open Source Software, 5(51), 2305. https://doi.org/10.21105/joss.02305
- Wu, Q., Lane, C. R., Li, X., Zhao, K., Zhou, Y., Clinton, N., DeVries, B., Golden, H. E., & Lang, M. W. (2019). Integrating LiDAR data and multi-temporal aerial imagery to map wetland inundation dynamics using Google Earth Engine. Remote Sensing of Environment, 228, 1-13. https://doi.org/10.1016/j.rse.2019.04.015 (pdf | 源代码)
请查看在2021年GeoPython会议上展示的geemap研讨会。这个研讨会全面介绍了geemap的主要特性。
主要特性
以下是geemap包可用功能的部分列表。请查看示例页面获取笔记本示例、GIF动画和视频教程。
- 将地球引擎JavaScript转换为Python脚本和Jupyter笔记本。
- 显示地球引擎数据图层以进行交互式制图。
- 在Python中支持地球引擎JavaScript API风格的函数,如Map.addLayer()、Map.setCenter()、Map.centerObject()、Map.setOptions()。
- 使用地球引擎数据创建分屏地图。
- 使用检查器工具交互式检索地球引擎数据。
- 通过简单点击地图来交互式绘制地球引擎数据。
- 在GeoJSON和地球引擎之间转换数据格式。
- 使用绘图工具与地球引擎数据交互。
- 在地球引擎中使用shapefile文件,无需上传数据到个人GEE账户。
- 将地球引擎FeatureCollection导出为其他格式(如shp、csv、json、kml、kmz)。
- 将地球引擎Image和ImageCollection导出为GeoTIFF。
- 将地球引擎Image中的像素提取到3D numpy数组中。
- 按组计算区域统计。
- 为地球引擎数据添加自定义图例。
- 直接在Jupyter笔记本中将地球引擎JavaScript转换为Python代码。
- 为由地球引擎数据生成的GIF图像添加动画文本。
- 为由地球引擎数据生成的GIF动画添加颜色条和图像。
- 使用地球引擎创建带有动画文本的Landsat时间序列动画。
- 从地球引擎数据目录中搜索地点和数据集。
- 使用时间序列检查器可视化景观随时间的变化。
- 将地球引擎地图导出为HTML文件和PNG图像。
- 在Jupyter笔记本中搜索地球引擎API文档。
- 从个人账户导入地球引擎资产。
- 直接在Jupyter笔记本中发布交互式GEE地图。
- 将本地栅格数据集(如GeoTIFF)添加到地图中。
- 执行图像分类和精度评估。
- 交互式提取像素值并导出为shapefile和csv格式。