Python module to evaluate experimental data
Project description
Welcome to pyEvalData
This is a Python module to read and evaluate experimental data. It can handle raw data from different sources such as spec, hdf5, NeXus files which are common data formats at synchrotrons, FELs, as well as in a growing number of laboratories. The evaluation provides common functionalities such as binning, error calculation, and advanced data manipulation via algebraic expressions as well as pre- and post-data-filters. Furthermore, advanced wrapper functions allow for plotting and fitting sequences of one or multiple scans in dependence of an external parameter.
A minimal code example would look like this:
import pyEvalData as ped
# define your data source
spec = ped.io.Spec(file_name='data.spec')
# initialize the evaluation
ev = ped.Evaluation(spec)
# define the x- and y-data
ev.xcol = 'motor1'
ev.clist = ['ct1', 'ct2', 'ct1/ct2']
# create a plot for scans 1-3
ev.plot_scans([1, 2, 3])
Please follow the user guide
and examples for
your first steps with pyEvalData
.
Features
- reading of several pre-defined raw data formats
- easy implementation of new raw-data formats using an
interface class
- common methods for plotting and fitting of experimental data, including:
- data binning
- error calculation
- data manipulation via algebraic expressions
- common data pre- and post-filters
Installation
You can either install directly from pypi.org using the command
$ pip install pyEvalData
or if you want to work on the latest develop release you can clone
pyEvalData
from the main git repository:
$ git clone https://github.com/dschick/pyEvalData.git pyEvalData
To work in editable mode (source is only linked but not copied to the python site-packages), just do:
$ pip install -e ./pyEvalData
Or to do a normal install with
$ pip install ./pyEvalData
Optionally, you can also let pip install directly from the repository:
$ pip install git+https://github.com/dschick/pyEvalData.git
You can have the following optional installations to enable unit tests, as well as building the documentation:
$ pip install pyEvalData[testing]
$ pip install pyEvalData[documentation]
Contribute & Support
If you are having issues please let us know via the issue tracker.
You can contribute to the project via pull-requests following the GitHub flow concept.
License
The project is licensed under the MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pyEvalData-1.5.1.tar.gz
.
File metadata
- Download URL: pyEvalData-1.5.1.tar.gz
- Upload date:
- Size: 27.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 027e32810a9abbebc66ff2a962a5c4d9a4241f67ef8efb560fd0ed9bf9753743 |
|
MD5 | 7f0d1f0cbe3ce0a3788cde5ce85df97c |
|
BLAKE2b-256 | 96b64a1ba329db5fe52fc141f13bcbb7ae802f062611a22cbca226ed22732af1 |
File details
Details for the file pyEvalData-1.5.1-py3-none-any.whl
.
File metadata
- Download URL: pyEvalData-1.5.1-py3-none-any.whl
- Upload date:
- Size: 36.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 026d30adf514577f4af3d52be2bc75a88b4a75d27ff9388b12fcca5ce2e6b566 |
|
MD5 | a5bce195a7566680ed23f1819b5105e1 |
|
BLAKE2b-256 | 5f5874869e94a53a12ce7076684d1cf0e4a282e63ce2a39a005a4d0a474f42b7 |