Project Icon

leafmap

Jupyter环境下的地理空间分析与交互式制图工具

leafmap是一个Python包,为Jupyter环境中的地理空间分析和交互式制图提供支持。它具有简单的API,支持多种地图后端,能够显示矢量和栅格数据,创建自定义图例和分屏地图。通过集成WhiteboxTools,leafmap提供了500多种地理空间分析工具。该工具适用于不同经验水平的用户,包括初学者和专业地理空间数据分析人员。

欢迎使用 leafmap

image image image image image Conda Recipe image Conda Downloads image image pre-commit.ci status image image status

logo

一个用于在 Jupyter 环境中进行地理空间分析和交互式制图的 Python 包。

加入我们的 Discord 服务器 👇

简介

Leafmap 是一个 Python 包,用于在 Jupyter 环境中进行交互式制图和地理空间分析,只需少量代码。它是 geemap Python 包的衍生项目,后者专门为 Google Earth Engine(GEE)设计。然而,地理空间社区中并非每个人都能访问 GEE 云计算平台。Leafmap 旨在为非 GEE 用户填补这一空白。它是一个免费开源的 Python 包,使用户能够在 Jupyter 环境中(如 Google Colab、Jupyter Notebook 和 JupyterLab)通过最少的编码来分析和可视化地理空间数据。Leafmap 建立在多个开源包的基础上,如 foliumipyleaflet(用于创建交互式地图)、WhiteboxToolswhiteboxgui(用于分析地理空间数据)以及 ipywidgets(用于设计交互式图形用户界面 [GUI])。Leafmap 拥有一套工具集,包含各种交互式工具,允许用户无需编码即可将矢量和栅格数据加载到地图上。此外,用户可以使用强大的分析后端(即 WhiteboxTools)直接在 leafmap 用户界面中执行地理空间分析,而无需编写一行代码。WhiteboxTools 库目前包含 500 多个用于高级地理空间分析的工具,如 GIS 分析地貌计量分析水文分析LiDAR 数据分析数学和统计分析以及流网分析

致谢

本项目得到亚马逊网络服务(AWS)的支持。

需求陈述

Python 有大量用于地理空间分析的包,如用于矢量数据分析的 geopandas 和用于栅格数据分析的 xarray。如 pyviz.org 所列,在 Python 中绘制地图数据也有许多选择,从专注于地图的库如 ipyleafletfolium,到支持地理空间数据类型的通用绘图工具,如 hvPlotbokehplotly。虽然这些工具提供了强大的功能,但将不同文件格式的地理空间数据显示在交互式地图上并执行基本分析可能具有挑战性,尤其是对于编码技能有限的用户来说。此外,许多工具缺乏前端(浏览器)和后端(Python)之间的双向通信,限制了它们在探索地图数据方面的交互性和可用性。 Leafmap通过利用ipyleaflet提供的双向通信来解决这些挑战,使用户只需一行代码就能加载和可视化地理空间数据集。Leafmap还提供了一个交互式图形用户界面(GUI),无需任何编码即可加载地理空间数据集。它专为希望在Jupyter环境中以交互方式分析和可视化地理空间数据的任何人设计,对编程技能有限的新手用户特别友好。高级程序员也可以从leafmap中受益,用于地理空间数据分析和构建交互式Web应用程序。

使用方法

现在就用Google Colab、Binder或Amazon Sagemaker Studio Lab启动leafmap Python包的交互式笔记本教程:

图片 图片 在Studio Lab中打开

查看Medium上这篇优秀的文章 - Leafmap:一个用于地理空间数据科学的新Python包

要了解更多关于leafmap的信息,请查看leafmap文档网站 - https://leafmap.org

主要特点

Leafmap提供了广泛的功能和能力,使地理空间数据科学家、研究人员和开发人员能够充分发挥其数据的潜力。一些主要特点包括:

  • 只需一行代码即可创建交互式地图: Leafmap提供了一个简单的API,让您只需最少的编码就能加载和可视化地理空间数据集,从而轻松创建交互式地图。

  • 在不同的地图后端之间切换: Leafmap支持多种地图后端,包括ipyleaflet、folium、kepler.gl、pydeck和bokeh。您可以在这些后端之间切换,以创建具有不同可视化样式和功能的地图。

  • 交互式更改底图: Leafmap允许您交互式地更改底图,提供多种选择,如OpenStreetMap、Stamen Terrain、CartoDB Positron等。

  • 添加XYZ、WMS和矢量切片服务: 您可以轻松地向地图添加XYZ、WMS和矢量切片服务,从而叠加来自各种来源的额外地理空间数据。

  • 显示矢量数据: Leafmap支持各种矢量数据格式,包括Shapefile、GeoJSON、GeoPackage以及GeoPandas支持的任何矢量格式。您可以在地图上加载和显示矢量数据,从而可视化和分析空间特征。

  • 显示栅格数据: Leafmap允许您在地图上加载和显示栅格数据,如GeoTIFF。这个功能对于可视化卫星图像、数字高程模型和其他网格数据集非常有用。

  • 创建自定义图例和色带: Leafmap提供了在地图上自定义图例和色带的工具,允许您用不同的颜色和相应的标签表示数据值。

  • 创建分屏地图和链接地图: 使用Leafmap,您可以创建分屏地图,以并排比较不同的数据集。您还可以创建链接地图,在多个地图之间同步交互,提供不同空间数据的协调视图。

  • 下载和可视化OpenStreetMap数据: Leafmap允许您下载和可视化OpenStreetMap数据,提供详细的街道地图、建筑物和其他兴趣点。

  • 交互式创建和编辑矢量数据: Leafmap包含用于在地图上交互式创建和编辑矢量数据的工具。您可以绘制点、线和多边形,并根据需要修改它们。

  • 搜索地理空间数据: Leafmap提供了从诸如时空资产目录(STAC)、Microsoft Planetary Computer、AWS Open Data Registry和OpenAerialMap等来源搜索和访问地理空间数据的功能。

  • 交互式检查像素值: Leafmap允许您交互式地检查栅格数据集中的像素值,帮助您在更细粒度的层面上分析和理解数据。

  • 创建分级统计图和热力图: Leafmap支持创建分级统计图,其中颜色代表特定地理区域的不同数据值。您还可以创建热力图来可视化数据密度。

  • 显示PostGIS数据库中的数据: Leafmap提供了连接PostGIS数据库并在地图上显示存储在数据库中的空间数据的工具。

  • 创建时间序列动画: Leafmap能够从矢量和栅格数据创建时间序列动画,让您可以可视化地理空间数据集中的时间变化。

  • 使用whitebox分析地理空间数据: Leafmap集成了WhiteboxTools和whiteboxgui,提供了一套地理空间分析工具,如水文分析、地形分析和LiDAR处理。

  • 对遥感影像进行分割和分类: Leafmap集成了segment-geospatial包,该包提供了使用深度学习算法对遥感影像进行分割和分类的工具。

  • 构建交互式Web应用: Leafmap支持使用Voila、Streamlit和Solara等框架开发交互式Web应用。这使您能够以用户友好的Web界面与他人分享您的地理空间分析和可视化。

这些特点和功能使leafmap成为地理空间数据探索、分析和可视化的强大工具。无论您是初学者还是经验丰富的地理空间数据科学家,leafmap都为您提供了一种在Python中高效处理地理空间数据的便捷方式。

引用

如果您在研究中发现leafmap有用,请考虑引用以下论文以支持我的工作。感谢您的支持。

  • Wu, Q. (2021). Leafmap: A Python package for interactive mapping and geospatial analysis with minimal coding in a Jupyter environment. Journal of Open Source Software, 6(63), 3414. https://doi.org/10.21105/joss.03414

演示

YouTube频道

我创建了一个YouTube频道用于分享地理空间教程。您可以订阅我的频道以获取定期更新。查看以下视频,了解使用MapLibre和Leafmap进行3D地图制作的方法。

MapLibre教程

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号