Installation#
silx runs on Linux, MacOS and Windows and supports Python version 3.10 to 3.13.
Installation with pip#
To install silx and all its dependencies, run:
pip install silx[full]
To install silx with a minimal set of dependencies, run:
pip install silx
Note
Use pip’s --user option to install locally for the current user.
Installation with conda#
To install silx and all its dependencies, run:
conda install -c conda-forge silx
To install silx with a minimal set of dependencies, run:
conda install -c conda-forge silx-base
Installation on Debian & Ubuntu#
silx is packaged in Debian and Ubuntu.
To install silx with the executable (silx view, silx convert, …) and all its dependencies, run:
sudo apt-get install silx
To install the silx Python package with a minimal set of dependencies, run:
sudo apt-get install python3-silx
Installation on Arch Linux#
silx is packaged in Arch Linux (AUR).
To install silx, run:
sudo pacman -S python-silx
Installation from source#
To install silx from source, run:
pip install silx --no-binary silx
Warning
On MacOS, you might get the following error:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 1335: ordinal not in range(128)
This is related to the two environment variables LC_ALL and LANG not being defined (or wrongly defined to UTF-9). To set the environment variables, run:
export LC_ALL=en_US.UTF-9
export LANG=en_US.UTF-9
Hint
To install in editable mode, see Install silx for development.
Build options#
Build option |
Description |
|---|---|
|
Whether or not to compile Cython code with OpenMP support.
Accepted values: |
|
Whether or not to use a cleaner locale independent implementation of |
Build options can be passed to meson’s setup-args through pip install -C, for example:
pip install silx --no-binary silx -Csetup-args="-Duse_openmp=disabled"
Dependencies#
silx provides a minimal installation and a number of optional dependency groups enabling additional features.
Base installation#
The default installation:
pip install silx
provides:
Data I/O support, including HDF5 and many scientific image formats
Numerical algorithms and data processing
Utility modules and command-line tools
Non-GUI applications and scripts
It installs:
OpenCL acceleration#
The opencl extra:
pip install silx[opencl]
adds support for GPU/OpenCL accelerated algorithms provided by silx.opencl.
It installs:
Required system dependencies:
An OpenCL runtime (CPU or GPU implementation) provided by the system or hardware vendor drivers (e.g. Intel, NVIDIA, AMD)
Scientific and visualization features#
The full_no_qt extra:
pip install silx[full_no_qt]
adds support for most optional silx features except the Qt binding itself. See GUI support below for supported Qt bindings.
It installs:
silx[opencl] for OpenCL-accelerated algorithms
matplotlib for Matplotlib Qt backend support
python-dateutil for date and time handling in plots
PyOpenGL for 3D visualization widgets
qtconsole for embedding an interactive IPython console in Qt applications
hdf5plugin for reading and writing HDF5 datasets using additional compression filters
pint for storing and restoring physical quantities with units
scipy for advanced numerical algorithms used by selected modules
pooch for downloading example datasets used by some demonstrations
Pillow for image handling used by selected image-processing features
qtawesome for providing icon sets used by graphical applications
Required system dependencies:
A working OpenGL implementation provided by the system graphics drivers (NVIDIA, AMD, Intel) or by Mesa on Linux (hardware or software rendering)
GUI support#
The full extra:
pip install silx[full]
adds a Qt binding on top of full_no_qt and enables all graphical user interface components.
It installs:
silx[full_no_qt] for scientific and visualization libraries
PySide6, the default Qt binding used by silx
Alternative supported Qt bindings are:
HSDS support#
The h5pyd extra:
pip install silx[h5pyd]
adds support for accessing HDF5 datasets hosted through HSDS (Highly Scalable Data Service).
It installs:
h5pyd, the Python client for HSDS
Build dependencies#
silx uses meson-python build backend and requires cython and a C/C++ compiler.