Pan3D aims to be an utility package for viewing and processing a wide variety of multidimensional datasets. Any dataset that can be interpreted with xarray can be explored and rendered with Pan3D. Read The Doc is available for additional information.
XArray Viewer is a Pan3D application focused on geospatial rendering use cases. This is a graphical user interface leveraging the Pan3D infrastructure to help geospatial scientists explore data.
For an introduction to this project, check out our blog post.
To install requirements for the Pan3D VTK mesh builder class only:
pip install pan3d
To install requirements for the graphical user interface (viewers + explorers):
pip install "pan3d[viewer]"
Optional: to install requirements for Pangeo and ESGF catalogs, respectively:
pip install "pan3d[pangeo]"
pip install "pan3d[esgf]"
Recommended: To install all requirements, including optional packages:
pip install "pan3d[all]"
xr-viewer
is the main entrypoint for launching XArray Viewer locally. Below
are some example usages.
To launch XArray Viewer without a target dataset to browse XArray examples:
xr-viewer
To launch XArray Viewer with a local path to a target dataset:
xr-viewer --xarray-file ./examples/example_dataset.nc
To launch XArray Viewer with a remote URL to a target dataset:
xr-viewer --xarray-url https://host.org/link/to/dataset.zarr
To launch XArray Viewer with a compatible configuration file (see examples):
xr-viewer --import-state ./examples/example_config_xarray.json
To launch the Catalog browser will allow you to query the Pangeo and ESGF Dataset Catalogs (see Catalogs Tutorial) depending on the available dependencies:
xr-catalog
You may have to install the required dependencies:
pip install "pan3d[pangeo]"
pip install "pan3d[esgf]"
The
xr-viewer
entrypoint will automatically launch your default browser to openlocalhost:8080
.To launch without opening your browser, add the
--server
argument to your command.
Another key component of Pan3D is its modular, web-based 3D visualization system built using trame. This system powers a suite of focused tools called Explorers, designed to be modular, reusable, and easily extended. Each Explorer is built around a specific task—think of them as "one-trick ponies" with clean interfaces tailored to their purpose. This avoids the clutter and complexity of general-purpose tools.
Pan3D currently includes four Explorer tools:
-
Slice Explorer – Navigate through 3D datasets by extracting 2D slices along any axis. Features interactive slice controls, dual 2D/3D view modes, and the ability to visualize slices within their 3D context using transparency and outlines. Perfect for exploring internal structures of volumetric data.
-
Globe Explorer – Visualize geographic data on a realistic 3D Earth. Projects latitude/longitude data onto a spherical surface with various texture options (satellite imagery, topography), continental outlines, and terrain elevation effects. Includes specialized camera controls optimized for globe navigation.
-
Contour Explorer – Generate smooth contour visualizations with color-banded regions between isolevels. Creates both filled contour bands and contour lines, with automatic surface refinement for publication-quality results. Ideal for visualizing scalar fields and identifying data patterns through isosurfaces.
-
Analytics Explorer – Combines interactive 3D visualization with statistical analysis powered by xCDAT. Provides multiple plot types including zonal averages, time series, and global statistics. Features a side panel with Plotly charts that update based on your 3D data selection, enabling deep data exploration through both visual and quantitative analysis
Similar to the main XArray Viewer (xr-viewer
), each explorer can be launched
from the command line:
# Launch Slice Explorer
xr-slicer
# Launch Globe Explorer
xr-globe
# Launch Contour Explorer
xr-contour
# Launch Analytics Explorer
xr-analytics
Each explorer will automatically open your default browser to localhost:8080
.
To launch without opening your browser, add the --server
argument to any
command.
- How to use XArray Viewer
- XArray Viewer command line
- Catalogs Tutorial
- How to use Pan3D Explorers
- How to use Pan3D in a Jupyter notebook
Pan3D comes with a set of example configuration files and example Jupyter notebooks in the examples folder. You can checkout the repository to run these locally, or you can use the Pan3D Binder instance to run these examples.