Library for efficient processing and visualization of time series
Project description
QATS
Python library and GUI for efficient processing and visualization of time series.
General
About
The python library provides tools for:
- Import and export from/to various pre-defined time series file formats
- Signal processing
- Inferring statistical distributions
- Cycle counting using the Rainflow algorithm
It was originally created to handle time series files exported from SIMO and RIFLEX. Now it also handles SIMA hdf5 (.h5) files, Matlab (version < 7.3) .mat files, CSV files and more.
QATS also features a GUI which offers efficient and low threshold processing and visualization of time series. It is perfect for inspecting, comparing and reporting:
- time series
- power spectral density distributions
- peak and extreme distributions
- cycle distributions
Demo
Getting started
Installation
Run the below command in a Python environment to install the latest QATS release:
python -m pip install qats
To upgrade from a previous version, the command is:
python -m pip install --upgrade qats
You may now import qats in your own scripts:
>>> from qats import TsDB, TimeSeries
... or use the GUI to inspect time series.
New in version 5.0.0.
The Qt binding PySide6 is installed with qats
.
If you would rather like to use PyQt6, run
python -m pip install pyqt6
If multiple Qt bindinds are installed, the one to use may be controlled by setting the environmental variable QT_API
to the desired package. Accepted values include pyqt6
(to use PyQt6) and pyside6
(PySide6). For more details, see README file for qtpy.
The GUI may now be launched by:
qats app
To create a start menu link, which you can even pin to the taskbar to ease access to the QATS GUI, run the following command:
qats config --link-app
Take a look at the resources listed below to learn more.
New in version 4.11.0. The command line interface is also accessible by running Python with the '-m' option. The following commands are equvivalent to those above:
python -m qats app
python -m qats config --link-app
Resources
Contribute
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Prerequisites
Install Python version 3.8 or later from either https://www.python.org or https://www.anaconda.com.
Install Poetry with the official installer.
Install the poetry-dynamic-versioning plugin:
poetry self add "poetry-dynamic-versioning[plugin]"
Clone the source code repository
At the desired location, run:
git clone https://github.com/dnvgl/qats.git
Installing
To get the development environment running...
poetry install
This will
- create an isolated environment
- install all dependencies including those required for development, testing and building documentation
- and install the package in development ("editable") mode
You should now be able to import the package in the Python console,
>>> import qats
>>> help(qats)
... and use the command line interface (CLI).
qats -h
New in version 4.11.0. The CLI is also available from
python -m qats -h
Running the tests
The automated tests are run using unittest.
python -m unittest discover
Building the package
Build tarball and wheel distributions by
poetry build
The builds appear in the .dist
folder. The distributions adhere to the PEP 0427
convention {distribution}-{version}(-{build tag})?-{python tag}-{abi tag}-{platform tag}.whl
.
Building the documentation
The html documentation is built using Sphinx
sphinx-build -b html docs\source docs\_build
To force a build to read/write all files (always read all files and don't use a saved environment), include the -a
and -E
options:
sphinx-build -a -E -b html docs\source docs\_build
Versioning
We apply the "major.minor.micro" versioning scheme defined in PEP 440. See also Scheme choices on https://packaging.python.org/.
Versions are tagged with Git tags like v3.0.1
. See the tags on this repository.
Release and deployment
We use the release cycle in GitHub to cut new releases.
Once a new release is published, GitHub Actions takes care of the packaging, unit testing and deployment to PyPi.
The workflows for continuous integration and deployment are found in .github/workflows.
Authors
License
This project is licensed under the MIT License - see the LICENSE file for details.
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 qats-5.1.2.tar.gz
.
File metadata
- Download URL: qats-5.1.2.tar.gz
- Upload date:
- Size: 120.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.9 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 07d237c1f9ff3f0e14e83ef808e75117366e16e904be1696ed6640f6888d04f4 |
|
MD5 | efc3def56e9ee110f7b315a721c18002 |
|
BLAKE2b-256 | 7a67ba917f76575d1186bfc00c05b9fcb16e2a96315c60c3470255adaa79e59b |
File details
Details for the file qats-5.1.2-py3-none-any.whl
.
File metadata
- Download URL: qats-5.1.2-py3-none-any.whl
- Upload date:
- Size: 137.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.9 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8151910330506f86b50d4651043f6dd138a4b9a26e0169a892dbef6523f8aa76 |
|
MD5 | ec25dc79c5e2fcfd3ba179bd3476bb6f |
|
BLAKE2b-256 | 91c4d9b4fbe5ba2a063f737b6a11d71ad6a68857d1cba0ff640e7be49fc74043 |