Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/silx-kit/silx

silx toolkit
https://github.com/silx-kit/silx

beamline cython experiments gui hdf5 plotting python-library python3 qt science synchrotron

Last synced: about 1 month ago
JSON representation

silx toolkit

Awesome Lists containing this project

README

        

silx toolkit
============

.. |silxView| image:: http://www.silx.org/doc/silx/img/silx-view-v1-0.gif
:height: 480px

The purpose of the *silx* project is to provide a collection of Python packages to support the
development of data assessment, reduction and analysis applications at synchrotron
radiation facilities.
*silx* aims to provide reading/writing tools for different file formats, data reduction routines
and a set of Qt widgets to browse and visualise data.

The current version features:

* Support of `HDF5 `_,
`SPEC `_ and
`FabIO `_
images file formats.
* OpenCL-based data processing: image alignment (SIFT),
image processing (median filter, histogram),
filtered backprojection for tomography,
convolution
* Data reduction: histogramming, fitting, median filter
* A set of Qt widgets, including:

* 1D and 2D visualization widgets with a set of associated tools using multiple backends (matplotlib or OpenGL)
* OpenGL-based widgets to visualize data in 3D (scalar field with isosurface and cut plane, scatter plot)
* a unified browser for HDF5, SPEC and image file formats supporting inspection and
visualization of n-dimensional datasets.

* a set of applications:

* a unified viewer (*silx view filename*) for HDF5, SPEC and image file formats

|silxView|

* a unified converter to HDF5 format (*silx convert filename*)

Installation
------------

To install silx (and all its dependencies), run:

.. code-block:: bash

pip install silx[full]

To install silx with a minimal set of dependencies, run:

.. code-block:: bash

pip install silx

Or using Anaconda on Linux and MacOS:

.. code-block:: bash

conda install silx -c conda-forge

Unofficial packages for different distributions are available:

- Unofficial Debian10 and Ubuntu20.04 packages are available at http://www.silx.org/pub/linux-repo/
- CentOS 7 rpm packages are provided by Max IV at: http://pubrepo.maxiv.lu.se/rpm/el7/x86_64/
- Fedora 23 rpm packages are provided by Max IV at http://pubrepo.maxiv.lu.se/rpm/fc23/x86_64/
- Arch Linux (AUR) packages are also available: https://aur.archlinux.org/packages/python-silx

`Detailed installation instructions `_
are available in the documentation.

Documentation
-------------

The documentation of `latest release `_ and
the documentation of `the nightly build `_ are
available at http://www.silx.org/doc/silx/

Testing
-------

*silx* features a comprehensive test-suite used in continuous integration for
all major operating systems:

|Github Actions Status|

Please refer to the `documentation on testing `_
for details.

Examples
--------

Some examples of sample code using silx are provided with the
`silx documentation `_.

License
-------

The source code of *silx* is licensed under the MIT license.
See the `LICENSE `_ and
`copyright `_ files for details.

Citation
--------

*silx* releases can be cited via their DOI on Zenodo: |zenodo DOI|

.. |Github Actions Status| image:: https://github.com/silx-kit/silx/workflows/CI/badge.svg
:target: https://github.com/silx-kit/silx/actions
.. |zenodo DOI| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.591709.svg
:target: https://doi.org/10.5281/zenodo.591709