JupyterGIS 突破新水平
JupyterGIS breaks through to the next level

原始链接: https://eo4society.esa.int/2025/10/16/jupytergis-breaks-through-to-the-next-level/

## JupyterGIS:协作式、基于浏览器的GIS JupyterGIS于2024年6月发布,通过JupyterLab框架将QGIS启发的GIS工作流程直接带入网页浏览器,实现实时协作和无缝的笔记本集成。该平台支持核心地理空间数据格式,并受益于社区贡献,实现快速开发。 最近的更新显著扩展了JupyterGIS的功能。增强的矢量瓦片支持现在包括一个识别工具和可定制的符号系统。一个新的处理工具箱,由WebAssembly GDAL提供支持,提供了缓冲、凸包计算和溶解等工具。可视化效果得到了改进,包括默认的Viridis颜色图、多波段GeoTIFF支持和灵活的样式选项。 JupyterGIS还集成了STAC浏览器,用于简化数据发现和直接图层添加,并支持GeoParquet和PMTiles数据格式。用户体验增强包括集成的控制面板、改进的工具栏和地图标注链接。一个新的“tiler”扩展将地理空间工作流程与基于数组的计算连接起来。 未来的开发重点是扩展处理工具箱、更深入的QGIS集成以及Story Maps编辑器。用户可以使用JupyterLite立即在浏览器中试用JupyterGIS。

## JupyterGIS进展与Hacker News讨论 最近一篇Hacker News文章强调了**JupyterGIS**的进展,该项目旨在为地理信息系统(GIS)带来更强大的、基于笔记本的界面。该项目现在具有由WebAssembly (WASM) 和GDAL驱动的浏览器处理工具箱,能够直接在浏览器中进行缓冲和凸包计算等操作。 讨论集中在其取代传统、通常存在缺陷且闭源的GIS软件(如ESRI产品和Google Earth)的潜力上。用户认为JupyterGIS在数据分析和使用标准Python库(如GeoPandas)构建自定义扩展方面具有价值——这与PyQGIS的复杂性形成对比。 一个关键特性是基于JupyterLab的CRDT系统实现的**实时协作**,允许多个用户同时编辑笔记本。然而,关于浏览器部署(JupyterLite)中的数据持久性以及创建与专用布局工具相当的出版质量地图的能力也存在疑问。可视化后端利用**OpenLayers和WebGL GPU加速**。
相关文章

原文

Launched in June 2024, JupyterGIS was introduced as a collaborative, web-based GIS environment built on the JupyterLab framework. Its objective is to bring QGIS-inspired workflows into the browser, enabling real-time collaborative editing, seamless integration with notebooks, and support for core geospatial data formats.

When it was first announced earlier this year, JupyterGIS already delivered:

  • Real-time collaborative editing (Google Docs-style)
  • Visualisation of raster & vector data
  • Symbology editing and spatio-temporal animations
  • Programmatic map control via a Python API.

Thanks to contributions from the community and support from partner organizations, JupyterGIS has advanced significantly and now offers an expanded range of features for analysis, visualization, and collaboration.

 

Enhanced vector tile capabilities

Support for vector tiles has been strengthened, including full compatibility with the pmtiles format.

Other key updates include:

  • An identify tool that inspects vector tiles to display features and associated properties.
  • A symbology panel that applies graduated, categorized, and canonical symbology to vector tile layers.

These improvements enhance the interpretability and styling of geospatial datasets directly in the browser.

 

The identify tool in action with a pmtiles vector dataset.

 

The symbology panel in action, allowing for different notations.

 

 

A new processing toolbox

One of the most significant updates is a new browser-based processing toolbox powered by a WebAssembly (WASM) build of the Geospatial Data Abstraction Library (GDAL).

Available tools include:

  • Buffer: computes a buffer around geometries of a vector dataset.
  • Convex Hull: calculates the convex hull for each feature of an input layer.
  • Dissolve: combines features of vector layers into new features
  • Bounding Boxes: calculates the bounding box for each feature in an input layer.
  • Centroid: creates a new layer with the centroids of the geometries of an input layer.
  • Concave Hull: computes the concave hull for each feature of an input point layer.

This toolbox has been designed for extensibility, with a JSON schema that allows additional GDAL operations to be integrated in a straightforward manner.

 

Using the processing tool to compute the convex hulls of geometries.

 

 

Symbology enhancements

Visualization of geospatial data has become more flexible and expressive through several enhancements:

  • Viridis is now the default colormap, providing perceptually uniform visualization.
  • Multiband symbology is now available for GeoTIFFs.
  • Canonical symbology defined in GeoJSON files can be applied automatically.
  • Colormaps can now be reversed, allowing greater flexibility for data interpretation and visualization.
  • In the case of point layers, color and marker size can be styled independently, and bound to different data.

 

Setting color and radius based on data.

 

Integration with SpatioTemporal Asset Catalogs (STAC)

A SpatioTemporal Asset Catalog (STAC) browser is now embedded into JupyterGIS, streamlining access to different data collections. Users can select specific platforms and sensors, choose data products and processing levels, and set temporal and spatial constraints.

It is now possible to search across multiple datasets simultaneously. Users can click on any result to add it directly as a layer to their JupyterGIS project. This creates a seamless workflow from data discovery to visualization, making it easier for researchers and analysts to find and integrate relevant satellite imagery and geospatial datasets into their Jupyter notebooks.

Currently, the STAC Browser only supports the Geodes STAC API but support for all STAC catalogs is under way.

 

Browsing a STAC access catalog from JupyterGIS.

 

Support for more data types

The range of supported geospatial data formats is now broadened with GeoParquet and PMTiles, enabling efficient columnar storage and fast analytical queries for GeoParquet, and highly compact, streaming-friendly vector tile delivery for PMTiles.

 

User experience and interface improvements

The interface has been refined for a smoother workflow:

  • Integrated control panels (layer list, filters, layer properties, etc.), reducing back and forth between the JupyterLab side-panels and the JupyterGIS UI. It also improves the “single document” scenario, allowing it to interact with JupyterGIS controls when opening a GIS document from the classic Jupyter Notebook UI.
  • An improved toolbar design, with cleaner icons and better usability.
  • A new feature to center the map on your current location.
  • Map annotations now link to the map: clicking an annotation automatically re-centers and zooms to the location.
  • Full-screen mode support.

 

Legends for vector layers

JupyterGIS now automatically generates legends for vector layers, ensuring consistent interpretation:

  • Legends are dynamically updated to reflect current symbology.
  • Customizations such as reversed colormaps are preserved.

 

Displaying legends in the layers panel.

 

JupyterGIS tiler extension

An extension for JupyterGIS enables the creation of JupyterGIS layers from xarray variables in Jupyter kernels, with support for lazy evaluation, bridging geospatial workflows with powerful array-based computation.

The package, called JupyterGIS-tiler, is available in GitHub here and can be installed from PyPI with pip install jupytergis-tiler.

 

Looking ahead

Development will continue to expand JupyterGIS in several directions:

  • Extension of the GDAL-based processing toolbox.
  • Deeper integration with QGIS and a richer Python API for automation.
  • A Story Maps Editor and Viewer to enable interactive communication of geospatial information through text, imagery, and maps.

In the meantime, feel free to try JupyterGIS directly in your browser with JupyterLite, no installation required.

Opportunities for engagement also include:

The JupyterGIS community continues to grow, and active participation from researchers, developers, and educators worldwide is encouraged.

 

联系我们 contact @ memedata.com