Skip to main content

A JupyterLab extension to explore and visualize HDF5 file contents.

Project description

jupyterlab-h5web

Github Actions Status PyPI version Binder

Demo

jupyterlab-h5web is a JupyterLab extension to explore and visualize HDF5 file contents, using the web-based viewer h5web. h5web supports the NeXus format.

See Usage for more details.

Requirements

  • JupyterLab 2

Install

Note: You will need NodeJS to install the extension.

pip install jupyterlab_h5web
jupyter lab build

To enable support for additional filters such as blosc or bitshuffle:

pip install jupyterlab_h5web[full]
jupyter lab build

This will install hdf5plugin in addition to the extension.

Update

In the case you want to update jupyterlab_h5web after having already installed it, do a clean reinstallation:

# Uninstall the old version
jupyter labextension uninstall jupyterlab-h5web
pip uninstall jupyterlab_h5web

# Install the new version
pip install jupyterlab_h5web
jupyter lab build

Otherwise, the labextension may not be updated correctly.

Usage

This extension enables opening HDF5 files in a JupyterLab tab and exploring HDF5 files in Jupyter notebooks.

In JupyterLab

You can double-click on an HDF5 file or right-click Open with -> h5web to launch a tab.

This tab is composed of a sidebar, where you can explore the structure of the HDF5 file, and of a main area where the visualization of the selected entity takes place. This visualization is controlled by the upper-right button that can toggle between:

  • Display: visualize datasets using Line, Heatmap or Matrix visualizations.
  • Inspect: show the metadata and attributes of any entity

In Jupyter notebooks

To open a HDF5 file with H5Web, use the H5Web widget in a notebook cell:

from jupyterlab_h5web import H5Web

H5Web('<path to the HDF5 file>')

An example is provided in example.ipynb.

Supported file formats

jupyter-h5web detects HDF5 files based on their file extensions. The viewer works for the following extensions:

  • "Classic" HDF5: .h5, .hdf5
  • NeXus: .nexus, .nx, .nxs
  • CXI: .cxi

For other types of files, you can change the extension to one of the supported extensions or, if it is widespread, open an issue to discuss its support.

Changelog

See https://github.com/silx-kit/jupyterlab-h5web/releases.

Troubleshoot

Error on jupyter lab build

If jupyter lab build fails, try to remove the minimize step from the build by running jupyter lab build --minimize=False instead of jupyter lab build.

This will fix Terser errors when minimizing three.js.

Check the server extension

If you are seeing the frontend extension but it is not working, check that jupyterlab_h5web is installed and enabled.

It should be listed when running:

jupyter serverextension list

If jupyterlab_h5web does not appear or is disabled, try to enable it:

jupyter serverextension enable jupyterlab_h5web

Check the frontend extension

If jupyterlab_h5web is installed and enabled but you are not seeing the frontend, check the frontend is installed:

jupyter labextension list

If it is installed, try:

jupyter lab clean
jupyter lab build

Stale H5Web

In the case the displayed H5Web does not match the installed version, try to reinstall the package using the procedure described in Update.

If the above instructions did not solve your issue, you can open an issue on GitHub.

Uninstall

jupyter labextension uninstall jupyterlab-h5web
pip uninstall jupyterlab_h5web

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyterlab_h5web-0.4.1.tar.gz (98.4 kB view details)

Uploaded Source

Built Distribution

jupyterlab_h5web-0.4.1-py3-none-any.whl (24.5 kB view details)

Uploaded Python 3

File details

Details for the file jupyterlab_h5web-0.4.1.tar.gz.

File metadata

  • Download URL: jupyterlab_h5web-0.4.1.tar.gz
  • Upload date:
  • Size: 98.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for jupyterlab_h5web-0.4.1.tar.gz
Algorithm Hash digest
SHA256 44a7bb06d2c30229f7d1f1bd2ddf3bbf0ae6bb7ea8d010383cde103c4c940390
MD5 b625ac193ec35cc30a5f43c7b32af30e
BLAKE2b-256 40c3ae2ecca33d4ff08b51389759b95aa57519474a22111579e405d649c40ffc

See more details on using hashes here.

File details

Details for the file jupyterlab_h5web-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: jupyterlab_h5web-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 24.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for jupyterlab_h5web-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d34aab60536bb58b57c16b46282f0727eb4ae67d0a94d26f2bbf79df31ddddc3
MD5 5275fe80446ae740c61935a94604891a
BLAKE2b-256 1395852e770c6e8cdd5b524775ceaccbd40a1f5b60729e890e16fc99d6d72a50

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page