Skip to main content

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

Metadata

Release files for xarray-graph 2026.8.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for xarray-graph 2026.8.5
File Size Uploaded
xarray_graph-2026.8.5.tar.gz 118.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for xarray-graph 2026.8.5
File Interpreter ABI Platform
xarray_graph-2026.8.5-py3-none-any.whl Python 3 none any Details

Total release size: 264.3 kB

Release files / xarray_graph-2026.8.5.tar.gz

Download URL xarray_graph-2026.8.5.tar.gz
Size 118.3 kB
Tags Source
SHA-256 checksum
How to use checksums
4e471b92dadcb4646dd5929c21b776723bfecb8a7839a477c994a4d5f20e7fb2
BLAKE2b-256 checksum
How to use checksums
b340fbe7f863217ed08ed56823d10e7b4c0f84ad41f0911d6bfb86d2cb312c3c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / xarray_graph-2026.8.5-py3-none-any.whl

Download URL xarray_graph-2026.8.5-py3-none-any.whl
Size 146.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
47af6f7ee7f0d9b19261a745c28c2cceb41a575310cbfa87ece5f72326b5ee8f
BLAKE2b-256 checksum
How to use checksums
2f60c21593eabc067dabb1a9fb556a18c55e6e3e206637b3e3de0ed295b01fb1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

2026.8.5 This release

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page