GeoViews:地理数据可视化库

GeoViews:地理数据可视化库

holoviz/geoviews 是一个 Python 地理可视化库,目前收获了 629 个 Star。

正文顶部截图

README区域截图

GeoViews 基于 HoloViews 构建,专门用于处理包含地理位置信息的数据。它在气象和海洋数据集方面有较强的支持,也适用于任何需要在地图上展示的数据。

这个库的核心定位是简化地理数据的探索流程。用户不需要写大量的底层绘图代码,就可以将数据投射到地图上。

GeoViews 底层依赖 Cartopy 库处理地理投影,渲染后端可以选择 Matplotlib 或 Bokeh。这意味着用户可以在静态图表和交互式可视化之间切换,不需要重写大量代码。

GeoViews 提供了一系列地理元素类型,包括 Feature、WMTS、Tiles、Points、Contours、Image、QuadMesh、TriMesh、RGB、HSV、Labels、Graph、HexTiles、VectorField 和 Text。这些元素可以在同一图层中叠加。比如温度数据可以和海岸线数据叠加:

gv.Image(temperature) * gv.Feature(cartopy.feature.COASTLINE)

这些 GeoElement 也可以与其他 HoloViews 元素组合成复杂的多图布局。这种组合方式是 GeoViews 区别于其他地理可视化工具的一个特点。


安装方式

GeoViews 可以通过 conda 安装:

conda install -c pyviz geoviews

如果只需要核心功能,可以安装 geoviews-core:

conda install -c pyviz geoviews-core

在某些情况下 proj6 可能导致安装问题,特别是 cartopy<=0.17 时。遇到这种情况需要固定 proj4 版本:

conda install proj4<6

安装完成后,复制示例到当前目录并运行:

geoviews examples
cd geoviews-examples
jupyter notebook

这里的 geoviews examplesgeoviews copy-examples --path geoviews-examples && geoviews fetch-data --path geoviews-examples 的简写。

在 Jupyter notebook 和 JupyterLab 中使用前,需要先执行 gv.extension()。GeoViews 对象作为单元格最后一个输出项时会自动渲染。

JupyterLab 3.0 及以上版本所需的扩展已自动打包在 pyviz_comms 中,版本需要 >=2.0。更早版本的 JupyterLab 需要手动安装扩展:

jupyter labextension install @pyviz/jupyterlab_pyviz

安装扩展后启动 JupyterLab:

jupyter-lab

GeoViews 也支持 pip 安装,但需要先安装 Cartopy 的依赖,或确保系统具备编译条件。如果需要使用 Iris 或 xesmf 等只在 conda-forge 上提供的库,建议从 conda-forge 安装:

conda create -n env-name -c pyviz -c conda-forge geoviews iris xesmf
conda activate env-name

示例和详细文档可以在 geoviews.org 查看。

posted @ 2026-06-21 15:09  小飞技术快餐  阅读(5)  评论(0)    收藏  举报