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.
- JupyterLab 4
See the table below for earlier JupyterLab versions
JupyterLab 2 | JupyterLab 3 | JupyterLab 4 | |
---|---|---|---|
Extension version range | 0.0.1 - 0.3.0 |
1.0.0 - 8.0.0 |
10.0.0 - ... |
pip install jupyterlab_h5web
To enable support for additional filters such as blosc or bitshuffle:
pip install jupyterlab_h5web[full]
This will install hdf5plugin in addition to the extension.
conda install -c conda-forge jupyterlab-h5web
This extension enables opening HDF5 files in a JupyterLab tab and exploring HDF5 files in Jupyter notebooks.
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
orMatrix
visualizations. - Inspect: show the metadata and attributes of any entity
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>')
The cell height can be resized with the handle at the bottom-right.
An example is provided in example.ipynb.
jupyter-h5web detects HDF5 files based on their file extensions. The viewer works for the following extensions:
- "Classic" HDF5:
.h5
,.hdf5
,.hdf
- NeXus:
.nexus
,.nx
,.nxs
,.nx5
- CXI:
.cxi
- NetCDF4:
.nc
,.nc4
- Loom:
.loom
- JLD2:
.jld2
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.
See https://github.com/silx-kit/jupyterlab-h5web/releases.
If the following instructions do not solve your issue, you can open an issue on GitHub.
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 server extension list
If jupyterlab_h5web
does not appear or is disabled, try to enable it:
jupyter server extension enable jupyterlab_h5web
If jupyterlab_h5web
is installed and enabled but you are not seeing the
frontend, check the frontend is installed:
jupyter labextension list
pip uninstall jupyterlab_h5web