A Python module dedicated to analysis of Partial Wave Spectroscopic Microscopy data. Read the paper here
Any analysis of raw data generated by PWS and related imaging modes requires loading image data and metadata from a large variety of file formats, performing complex pre-processing steps before any of the real analysis begins. Any minor variations in how this pre-processing is performed can result in major differences in final analysis results. PWSpy provides an object-oriented interface for performing all common file I/O and analysis tasks related to PWS. This allows users to write succinct and readable scripts/software that function identically regardless of the file format of the raw data and which are guaranteed to perform all basic operations properly. The analysis steps described in previous publications (1, 2, 3) can be found written out clearly in Python under the analysis
package. Classes providing uniform file handling for the current file format used by the PWS Acquisition plugin for Micro-Manager as well as all known legacy formats can be found under the dataTypes
package. This library provides support for the backend code of PWSpy_GUI.
API documentation is hosted online at ReadTheDocs
PWSpy
is most easily installed with the Conda package manager.
It is advisable to install PWSpy
into it's own Conda environment to avoid dependency conflicts.
Create a new environment with the command: conda create -n {environmentName} python=3.7
. You can then make the new environment active in your terminal with conda activate {environmentName}
.
More information here.
PWSpy
is published online to the "backmanlab" Anaconda Cloud channel. It can be installed from Conda with the command conda install -c conda-forge -c backmanlab pwspy
PWSpy
is available on PyPi and can be installed using Pip, however some of its dependencies may not automatically install properly. Installing via conda
is the easiest method.
For information on creating a Conda package yourself see here.
Automated tests using the pytest framework reside under the tests directory. The default configuration for pytest can be found in pyproject.toml. Pytest 6.0 or greater is required. For more information on running pytest from the commandline or IDE integration please see the pytest documentation. The tests require that you first install the test dataset under tests/resources
. Due to the size of the test dataset it is hosted externally rather than being included in the Git repository. Please check here for up to date information on how to acquire the test dataset.
Read the contributing section in the documentation if you want to help us improve and further develop PWSpy!