<img src="https://raw.githubusercontent.com/labscript-suite/labscript-suite/master/art/lyse_32nx32n.svg" height="64" alt="the labscript suite – lyse" align="right">
# the _labscript suite_ » lyse
### Online analysis of live experiment data
[![Actions Status](https://github.com/labscript-suite/lyse/workflows/Build%20and%20Release/badge.svg?branch=maintenance%2F3.0.x)](https://github.com/labscript-suite/lyse/actions)
[![License](https://img.shields.io/pypi/l/lyse.svg)](https://github.com/labscript-suite/lyse/raw/master/LICENSE.txt)
[![Python Version](https://img.shields.io/pypi/pyversions/lyse.svg)](https://python.org)
[![PyPI](https://img.shields.io/pypi/v/lyse.svg)](https://pypi.org/project/lyse)
[![Conda Version](https://img.shields.io/conda/v/labscript-suite/lyse)](https://anaconda.org/labscript-suite/lyse)
[![Google Group](https://img.shields.io/badge/Google%20Group-labscriptsuite-blue.svg)](https://groups.google.com/forum/#!forum/labscriptsuite)
<!--[![DOI](http://img.shields.io/badge/DOI-10.1063%2F1.4817213-0F79D0.svg)](https://doi.org/10.1063/1.4817213)-->
**lyse** is a data analysis framework for experiments controlled by the [*labscript suite*](https://github.com/labscript-suite/labscript-suite). It coordinates online analysis of live experiment data, by automatically running Python analysis scripts.
Analysis routines are Python scripts that can be run on a labscript experiment ([HDF5](https://support.hdfgroup.org/HDF5/whatishdf5.html)) file. We break analysis into two distinct groups:
1. **single-shot analysis** routines analyze a single HDF5 file corresponding to one realization of an experimental sequence, or *shot*; and
2. **multi-shot analysis** routines perform higher-order analysis on data from many shots.
A set of Python scripts can be loaded for each analysis category, which will run (when appropriate) on new shot files as they are sent to lyse from [**blacs**](https://github.com/labscript-suite/blacs). Acquired data, global variables from [**runmanager**](https://github.com/labscript-suite/runmanager) and analysis results generated in lyse, for all loaded shots, are stored in a table (a [pandas `DataFrame`](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.html). This is a powerful analysis schema that takes advantage of the self-documenting nature of labscript experiment shot files.
The DataFrame is displayed in the lyse GUI and can also be accessed remotely from another PC as follows:
```python
import lyse
df = lyse.data(host='127.0.0.1', port=42519)
```
Moreover, the lyse DataFrame can be serialized so that an analysis session can be restored in lyse or in a headless environment.
<img src="https://bitbucket.org/repo/BMBAeq/images/4286820861-lyse_example.png" alt="lyse interface – screenshot">
The lyse interface, comprising:
- Single- and multi-shot analysis routines (Python scripts);
- A graphical representation of the Pandas DataFrame;
- Figures generated by the analysis scripts.†
- The output log from lyse and the analysis routines.
† In this example, these are publication quality figures generated for the manuscript *Science* **364**, pp. 1267 (2019) [doi:10.1126/science.aat5793](https://doi.org/10.1126/science.aat5793).
## Installation
lyse is distributed as a Python package on [PyPI](https://pypi.org/user/labscript-suite) and [Anaconda Cloud](https://anaconda.org/labscript-suite), and should be installed with other components of the _labscript suite_. Please see the [installation guide](https://docs.labscriptsuite.org/en/latest/installation) for details.
Raw data
{
"_id": null,
"home_page": "http://labscriptsuite.org",
"name": "lyse",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "experiment analysis automation",
"author": "The labscript suite community",
"author_email": "labscriptsuite@googlegroups.com",
"download_url": "https://files.pythonhosted.org/packages/23/28/183b7416762359f80f7c7a71b6aee3733c230f40b91a670ea5b61c991ea3/lyse-3.2.3.tar.gz",
"platform": null,
"description": "<img src=\"https://raw.githubusercontent.com/labscript-suite/labscript-suite/master/art/lyse_32nx32n.svg\" height=\"64\" alt=\"the labscript suite \u2013 lyse\" align=\"right\">\n\n# the _labscript suite_ \u00bb lyse\n\n### Online analysis of live experiment data\n\n[![Actions Status](https://github.com/labscript-suite/lyse/workflows/Build%20and%20Release/badge.svg?branch=maintenance%2F3.0.x)](https://github.com/labscript-suite/lyse/actions)\n[![License](https://img.shields.io/pypi/l/lyse.svg)](https://github.com/labscript-suite/lyse/raw/master/LICENSE.txt)\n[![Python Version](https://img.shields.io/pypi/pyversions/lyse.svg)](https://python.org)\n[![PyPI](https://img.shields.io/pypi/v/lyse.svg)](https://pypi.org/project/lyse)\n[![Conda Version](https://img.shields.io/conda/v/labscript-suite/lyse)](https://anaconda.org/labscript-suite/lyse)\n[![Google Group](https://img.shields.io/badge/Google%20Group-labscriptsuite-blue.svg)](https://groups.google.com/forum/#!forum/labscriptsuite)\n<!--[![DOI](http://img.shields.io/badge/DOI-10.1063%2F1.4817213-0F79D0.svg)](https://doi.org/10.1063/1.4817213)-->\n\n\n**lyse** is a data analysis framework for experiments controlled by the [*labscript suite*](https://github.com/labscript-suite/labscript-suite). It coordinates online analysis of live experiment data, by automatically running Python analysis scripts.\n\nAnalysis routines are Python scripts that can be run on a labscript experiment ([HDF5](https://support.hdfgroup.org/HDF5/whatishdf5.html)) file. We break analysis into two distinct groups:\n\n1. **single-shot analysis** routines analyze a single HDF5 file corresponding to one realization of an experimental sequence, or *shot*; and\n2. **multi-shot analysis** routines perform higher-order analysis on data from many shots.\n\nA set of Python scripts can be loaded for each analysis category, which will run (when appropriate) on new shot files as they are sent to lyse from [**blacs**](https://github.com/labscript-suite/blacs). Acquired data, global variables from [**runmanager**](https://github.com/labscript-suite/runmanager) and analysis results generated in lyse, for all loaded shots, are stored in a table (a [pandas `DataFrame`](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.html). This is a powerful analysis schema that takes advantage of the self-documenting nature of labscript experiment shot files.\n\nThe DataFrame is displayed in the lyse GUI and can also be accessed remotely from another PC as follows:\n\n```python\nimport lyse\ndf = lyse.data(host='127.0.0.1', port=42519)\n```\n\nMoreover, the lyse DataFrame can be serialized so that an analysis session can be restored in lyse or in a headless environment.\n\n<img src=\"https://bitbucket.org/repo/BMBAeq/images/4286820861-lyse_example.png\" alt=\"lyse interface \u2013 screenshot\">\n\nThe lyse interface, comprising:\n\n- Single- and multi-shot analysis routines (Python scripts);\n- A graphical representation of the Pandas DataFrame;\n- Figures generated by the analysis scripts.\u2020\n- The output log from lyse and the analysis routines.\n\n\u2020 In this example, these are publication quality figures generated for the manuscript *Science* **364**, pp. 1267 (2019) [doi:10.1126/science.aat5793](https://doi.org/10.1126/science.aat5793).\n\n\n## Installation\n\nlyse is distributed as a Python package on [PyPI](https://pypi.org/user/labscript-suite) and [Anaconda Cloud](https://anaconda.org/labscript-suite), and should be installed with other components of the _labscript suite_. Please see the [installation guide](https://docs.labscriptsuite.org/en/latest/installation) for details.\n",
"bugtrack_url": null,
"license": "BSD",
"summary": "Automated analysis queue for labscript suite experiments",
"version": "3.2.3",
"project_urls": {
"Download": "https://github.com/labscript-suite/lyse/releases",
"Homepage": "http://labscriptsuite.org",
"Source Code": "https://github.com/labscript-suite/lyse",
"Tracker": "https://github.com/labscript-suite/lyse/issues"
},
"split_keywords": [
"experiment",
"analysis",
"automation"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3731db8d73fec34c106aa5c8b4db02a5587c438166e7648186562f4ec86fa17a",
"md5": "b65275364b3d53ae3fb0ad7134960fea",
"sha256": "c1a74a57eb475e3601a2d821b5d856d1c7eb024a58a95e6e2e9a5693af5c5e6b"
},
"downloads": -1,
"filename": "lyse-3.2.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b65275364b3d53ae3fb0ad7134960fea",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 147060,
"upload_time": "2023-10-12T19:50:00",
"upload_time_iso_8601": "2023-10-12T19:50:00.594604Z",
"url": "https://files.pythonhosted.org/packages/37/31/db8d73fec34c106aa5c8b4db02a5587c438166e7648186562f4ec86fa17a/lyse-3.2.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2328183b7416762359f80f7c7a71b6aee3733c230f40b91a670ea5b61c991ea3",
"md5": "e7822015c61cb7b69c02de88c5e1bdcb",
"sha256": "c8722beabfec44674a532eb8b05e6d95cb392b631b25c5749bcd2efd2d558531"
},
"downloads": -1,
"filename": "lyse-3.2.3.tar.gz",
"has_sig": false,
"md5_digest": "e7822015c61cb7b69c02de88c5e1bdcb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 465734,
"upload_time": "2023-10-12T19:50:03",
"upload_time_iso_8601": "2023-10-12T19:50:03.283760Z",
"url": "https://files.pythonhosted.org/packages/23/28/183b7416762359f80f7c7a71b6aee3733c230f40b91a670ea5b61c991ea3/lyse-3.2.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-10-12 19:50:03",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "labscript-suite",
"github_project": "lyse",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "lyse"
}