Skip to main content

A framework for working with Partial Wave Spectroscopic microscopy files.

Project description

PWSpy

A Python module dedicated to analysis of Partial Wave Spectroscopic Microscopy data. Read the paper here

Statement of need

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.

Documentation

API documentation is hosted online at ReadTheDocs

Installation

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.

Installing from Anaconda Cloud (recommended)

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

Installing with Pip

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.

Building from source and distributing

For information on creating a Conda package yourself see here.

Testing

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.

Contributing

Read the contributing section in the documentation if you want to help us improve and further develop PWSpy!

DOI

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pwspy-1.0.3.tar.gz (6.0 MB view details)

Uploaded Source

File details

Details for the file pwspy-1.0.3.tar.gz.

File metadata

  • Download URL: pwspy-1.0.3.tar.gz
  • Upload date:
  • Size: 6.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for pwspy-1.0.3.tar.gz
Algorithm Hash digest
SHA256 199a6d767e2242f1c66ae259b1b492ab9b925f41830ddd900aa286d54ed082a6
MD5 b364791f32585c49b675870b1dc01f96
BLAKE2b-256 3df5390f539de892c4480087c89b5cb4f44242a522e8816ef49a88e3af5c187f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page