吉图
使用 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
- 免费软件:麻省理工学院许可证
加入我们的 Discord 服务器?
致谢: geemap 项目得到了美国国家航空航天局 (NASA) 的支持,拨款号为 80NSSC22K1742,通过开源工具、框架和库 2020 计划颁发。
公告
吴秋生撰写的《Earth Engine and Geemap: Geospatial Data Science with Python 》一书已由 Locate Press 于 2023 年 7 月出版。如果您有兴趣购买该书,请访问以下网址:https://locatepress.com /书/哎呀。
介绍
Geemap是一个 Python 包,用于使用 Google Earth Engine (GEE) 进行交互式地理空间分析和可视化,GEE 是一个云计算平台,拥有数 PB 的卫星图像和地理空间数据集目录。在过去的几年中,GEE 在地理空间社区中变得非常流行,并为本地、区域和全球范围内的众多环境应用提供了支持。 GEE 提供 JavaScript 和 Python API,用于向 Earth Engine 服务器发出计算请求。与 GEE JavaScript API 的全面文档和交互式 IDE(即 GEE JavaScript 代码编辑器)相比,GEE Python API 的文档相对较少,交互可视化结果的功能也有限。 geemap Python 包的创建就是为了填补这一空白。它基于 ipyleaflet 和 ipywidgets 构建,使用户能够在基于 Jupyter 的环境中以交互方式分析和可视化 Earth Engine 数据集。
Geemap面向希望利用包含各种库和工具的 Python 生态系统来探索 Google Earth Engine 的学生和研究人员。它还专为想要从 GEE JavaScript API 过渡到 Python API 的现有 GEE 用户而设计。 geemap 包的自动化 JavaScript 到 Python 转换模块可以大大减少将现有 GEE JavaScript 转换为 Python 脚本和 Jupyter Notebook 所需的时间。
有关视频教程和笔记本示例,请访问示例页面。有关 geemap 模块和方法的完整文档,请访问 API 参考。
如果您发现 geemap 对您的研究有用,请考虑引用以下论文来支持我的工作。感谢您的支持。
- 吴琪,(2020)。 geemap:一个用于与 Google Earth Engine 进行交互式地图绘制的 Python 包。开源软件杂志,5(51), 2305。https://doi.org/10.21105/joss.02305
- Wu, Q.、Lane, CR、Li, X.、Zhao, K.、Zhou, Y.、Clinton, N.、DeVries, B.、Golden, HE 和 Lang, MW (2019)。使用 Google Earth Engine 集成 LiDAR 数据和多时相航空图像来绘制湿地淹没动态图。环境遥感,228,1-13。 https://doi.org/10.1016/j.rse.2019.04.015(pdf | 源代码)
查看 GeoPython Conference 2021 上举办的 geemap 研讨会。该研讨会全面介绍了 geemap 的主要功能。
主要特点
以下是 geemap 包可用功能的部分列表。请查看示例页面以获取笔记本示例、GIF 动画和视频教程。
- 将 Earth Engine JavaScript 转换为 Python 脚本和 Jupyter Notebook。
- 显示 Earth Engine 数据图层以进行交互式绘图。
- 支持 Python 中的 Earth Engine JavaScript API 风格的函数,例如
Map.addLayer()
、 Map.setCenter()
、 Map.centerObject()
、 Map.setOptions()
。 - 使用 Earth Engine 数据创建分面板地图。
- 使用检查器工具以交互方式检索 Earth Engine 数据。
- 只需单击地图即可交互式绘制 Earth Engine 数据。
- 在 GeoJSON 和 Earth Engine 之间转换数据格式。
- 使用绘图工具与 Earth Engine 数据交互。
- 将 shapefile 与 Earth Engine 结合使用,无需将数据上传到 GEE 帐户。
- 将 Earth Engine FeatureCollection 导出为其他格式(即 shp、csv、json、kml、kmz)。
- 将 Earth Engine 图像和 ImageCollection 导出为 GeoTIFF。
- 将 Earth Engine 图像中的像素提取到 3D numpy 数组中。
- 按组计算区域统计数据。
- 为 Earth Engine 数据添加自定义图例。
- 直接在 Jupyter Notebook 中将 Earth Engine JavaScript 转换为 Python 代码。
- 将动画文本添加到由 Earth Engine 数据生成的 GIF 图像中。
- 将颜色条和图像添加到由 Earth Engine 数据生成的 GIF 动画中。
- 使用 Earth Engine 创建包含动画文本的 Landsat 延时动画。
- 从 Earth Engine 数据目录中搜索地点和数据集。
- 使用时间序列检查器可视化景观随时间的变化。
- 将 Earth Engine 地图导出为 HTML 文件和 PNG 图像。
- 在 Jupyter 笔记本中搜索 Earth Engine API 文档。
- 从个人帐户导入 Earth Engine 资产。
- 直接在 Jupyter Notebook 中发布交互式 GEE 地图。
- 将本地栅格数据集(例如 GeoTIFF)添加到地图中。
- 执行图像分类和准确性评估。
- 以交互方式提取像素值并导出为 shapefile 和 csv。