xarray-graph 2026.8.5


pip install xarray-graph

  Latest version

Released: Aug 05, 2026


Meta
Author: Marcel Goldschen-Ohm
Requires Python: >=3.10

Classifiers

Development Status
  • 4 - Beta

Environment
  • X11 Applications :: Qt

Intended Audience
  • Developers
  • End Users/Desktop
  • Science/Research

License
  • OSI Approved :: MIT License

Programming Language
  • Python :: 3 :: Only

Topic
  • Scientific/Engineering :: Visualization
  • Software Development :: User Interfaces

xarray-graph

PyQt UIs for Xarray DataTree including tree view and DataArray slice graphing and processing.

GitHub Tag test GitHub Release publish

:construction: YouTube video for graph app coming soon...

Contents

Install

Requires a PyQt package. Should work with PySide6 (the official Python Qt binding), PyQt6, or PyQt5 via the QtPy abstraction layer. Note: PySide6>=6.2.2 for Apple silicon support, and PySide6!=6.9.1 due to a bug that is incompatible with pyqtgraph.

Install with uv (recommended):

  1. Install the python package manager uv.
  2. Download the xarray-graph GitHub repository. For now, I suggest downloading the latest version of the repo as it has been under frequent development.
  3. In the downloaded repo directory, run the following commands (e.g., in a Terminal or shell):
uv sync
uv pip install "PySide6>=6.2.2,!=6.9.1"

Install with pip:

pip install xarray-graph
pip install "PySide6>=6.2.2,!=6.9.1"

↑ top

XarrayDataTreeViewer

Tree UI for an Xarray DataTree.

:rocket: To launch the application, run the following command (e.g., in a Terminal or shell) in the downloaded repo directory:

uv run xarray-tree

:warning: If you installed with pip, omit uv run.

:bangbang: Note: The first time you run the app it may take 20-30 seconds to start due to loading/caching of graphics libraries, so be patient. Subsequent runs should start in only a few seconds.

↑ top

XarrayGraph

Graph/Iterate/Fit/Analyze (x,y) slices of DataArrays in an Xarray DataTree.

:construction: YouTube video coming soon...

:rocket: To launch the application, run the following command (e.g., in a Terminal or shell) in the downloaded repo directory:

uv run xarray-graph

:warning: If you installed with pip, omit uv run.

:bangbang: Note: The first time you run the app it may take 20-30 seconds to start due to loading/caching of graphics libraries, so be patient. Subsequent runs should start in only a few seconds.

↑ top

Using Xarray DataTree model/view components in your own app

import xarray as xr
from xarray_graph.tree.XarrayDataTreeModel import XarrayDataTreeModel
from xarray_graph.tree.XarrayDataTreeView import XarrayDataTreeView

dt = xr.DataTree(...)

model = XarrayDataTreeModel()
model.setDatatree(dt)

view = XarrayDataTreeView()
view.setModel(model)

# place view widget in your app as desired

↑ top

Support

This is all done in my free time. If you find it useful, why not buy me a cup of coffee? Cheers!

Buy Me A Coffee

↑ top

Wheel compatibility matrix

Platform Python 3
any

Files in release

Extras:
Dependencies:
xarray
h5netcdf
zarr
scipy
pint
lmfit
qtpy
qtawesome
pyqtgraph
qtconsole
cmap
requests
cftime