Skip to content

xarray-contrib/xarray_leaflet

Repository files navigation

Binder Build Status

xarray-leaflet: an xarray extension for tiled map plotting

xarray and Leaflet share this ability to work with fragments of data, xarray through Dask's chunks, and Leaflet through map tiles. In the end this is really the same concept, so it was a natural thing to make them work together.

Fortunately xarray is written in Python, and we happen to have a great Python binding for Leaflet, ipyleaflet.

xarray-leaflet uses ipyleaflet as a plotting backend for data arrays. It generates map tiles on the fly, possibly using Dask's lazy evaluation system and Zarr's chunked data storage, and serves them through the Jupyter server, allowing for big data visualization.

See the example notebooks:

How does it compare to other visualization libraries?

xarray-leaflet doesn't try to reinvent the wheel. It stands on the shoulders of giants: xarray, Jupyter widgets, Leaflet. By combining this software stack, it opens up new possibilities while being a relatively small library.

Installation

Using conda:

conda install -c conda-forge xarray_leaflet

Using pip:

pip install xarray_leaflet

Using xarray-leaflet with Voila

To work with xarray-leaflet, Voila has to be launched with the following command:

jupyter server --ServerApp.open_browser=True --ServerApp.default_url="voila/render/path_to_notebook.ipynb"