Cytoflow: Better quantitative flow cytometry.#

_images/hero.png
Tutorials

New to Cytoflow? Start here!

User Manual

The user guide has HOWTOs and reference guides to help you use Cytoflow effectively.

Operation and View Gallery

Cytoflow can do a lot! This is a gallery of the operations that Cytoflow can apply to cytometry data and the ways it can be viewed.

Developer Manual

Do you want to analyze flow data using Python and JupyterLab? Do you want to contribute to Cytoflow’s development?

What is Cytoflow?#

Cytoflow is a point-and click program and a Python library for analyzing flow cytometry data.

How is Cytoflow different?#

  • An emphasis on metadata. Cytoflow assumes you are measuring the fluorescence of several samples that were treated differently: collected at different times, treated with varying levels of a chemical, etc. You specify these sample conditions up front, then use those conditions to control your analysis.

  • The analysis is represented as a workflow. Operations such as compensation and gating are applied sequentially; a workflow can be saved a re-used or shared with colleagues.

  • Good visualization. Make publication-ready plots right from the software.

  • Thoughtful documentation. Each module, operation and visualization is documented, and particular attention has been paid to getting users up-and-running quickly.

  • Cytoflow is built on Python modules that you can use in your own workflows. The library was designed to work particularly well in a JupyterLab notebook.

  • Cytoflow is free and open-source. Contribute bug reports at the GitHub project page or download the source code to modify it for your own needs. Then, contribute your changes back so the rest of the community can benefit from them.

If you’d like to see Cytoflow in action, here are some (slightly dated) screenshots, or you can check out a (slightly dated) screencast on Youtube.

Getting Started#

Quick installation instructions for the point-and-click program:

More detailed installation instructions can be found in the user’s manual..

Documentation#

The user manual is broken into four different sets of documentation:

  • Tutorials take you step-by-step through some basic analyses. Start here if you’re new to Cytoflow.

  • How-to guides are recipes. They guide you through some common use-cases. They are more advanced than tutorials and assume some knowledge of how Cytoflow works.

  • User guides discuss how Cytoflow works “under the hood”, which can make you a better Cytoflow user for more advanced or non-standard analyses.

  • Reference pages document every operation and view. These are the same pages that are displayed in Cytoflow’s “Help” panel.

For Developers#

If you want to use Python to analyze flow cytometry data, then Cytoflow is for you! I’ve found Cytoflow useful for both interactive data exploration (ie, poking data to see what it’s telling you) and automated data analysis (ie, writing scripts and pipelines to process lots of data.)

To get a taste of what Cytoflow can do, check out an example Jupyter notebook.

Then, head over to the developers’ manual. There, you’ll find:

For Contributors#

Hooray! We’d love to have you.

The Cytoflow source code is hosted over at GitHub. Feel free to report bugs, request enhancements, fork the codebase and start hacking. Also, check out the Developers’ guides for an overview and justification of Cytoflow’s design, as well as useful information for writing your own modules, operations and views.