Documentation
How to analyze flow, spectral and mass cytometry data with CytoWeave, from a first example experiment to a methods paragraph. New here? Start with Getting started.
Quick start
- Install CytoWeave with one command.
- Run
cytoweavein a terminal. It opens its own window. - Open an example experiment from the start page and click Add suggested gates, or drop your own FCS files or a folder on the window.
- Work through the views in the bar at the top: Gate, QC, Compensate, Spectral, Explore, Tables, Compare, Figures and Report.
- Press ⌘K (Ctrl+K) to find any sample, population, channel or command, and ? for every keyboard shortcut.
How do I…
| Task | Where |
|---|---|
| Open my FCS files and annotate them by condition, donor and batch | Opening data |
| Gate the same way on every sample, and fix the gate on one | Gating |
| Find the samples where a gate does not fit | Review across samples |
| See where a marker's negative ends without staining an FMO tube | Virtual FMO controls |
| Move a shared gate where the data have shifted, sample by sample | Adapting a gate to each sample |
| Apply last month's analysis to a new experiment, or start from a published strategy | Templates and cell types |
| Name populations with Cell Ontology terms | Cell types |
| Measure a detector's Q and B from beads and follow the instrument over time | Q, B and Levey–Jennings |
| Keep reference spectra across experiments, or catch a degraded tandem | The spectral library |
| Choose the dye for each marker of a new panel | Optimizing the assignment |
| Compute a spillover matrix from single-stain controls | Compensation |
| Check whether a matrix from the cytometer is right | Check against the controls |
| Unmix a spectral experiment and choose the unmixing model | Spectral unmixing |
| Find the amount of antibody to use, or a detector's voltage | Titration and voltage walks |
| Remove clogs and bubbles before gating | Acquisition QC |
| Remove a batch effect, or debarcode a pooled plate | Normalization and debarcoding |
| Cluster, make a UMAP and know whether to trust it | Clustering and maps |
| Get a frequency table of every population for every sample | Tables |
| Make a ratio of two markers, or another formula, into a channel | Formula channels |
| Report fluorescence in MEF units with calibration beads | Calibrated units |
| Count cells per µL with counting beads | Absolute counts |
| Find the share of cells above an FMO when the populations overlap | Comparing with a control |
| Report a rare population with its limits of detection and quantification | Rare events |
| Test a difference between stimulated and unstimulated samples | Comparisons |
| Find which markers change in which clusters between conditions | Differential state |
| Fit the cell cycle or proliferation, measure a calcium flux, or read an index-sorted plate | Cell cycle, proliferation, kinetics and index sorting |
| Lay out a plate, show a statistic across it with Z′, fit dose-response curves, or read a bead immunoassay | Plates, dose-response and bead assays |
| Make a gating-strategy figure and write the methods | Figures, methods and certificates |
| Find out where a figure came from, or redraw it | Opening an exported figure |
| Make the same figure for every sample or subject, as PDF or PowerPoint | Batch reports |
| Send an analysis to a PI or reviewer who does not have CytoWeave | Review reports |
| Let reviewers and readers confirm every number of a paper's analysis | Reproducibility certificates |
| Take the statistics to Excel or Prism | Excel and Prism |
| Open events from a CSV file | Events in CSV files |
| Concatenate or downsample samples, or take events to scanpy (AnnData) | Events for other tools |
| Move an analysis over from FlowJo or FACSDiva | FlowJo, FACSDiva and Gating-ML |
| Send an analysis to a colleague with its FCS files | Workspaces |
| Give an analysis to someone who uses FlowJo | Exporting to FlowJo |
| Share FCS files without identifying information | De-identified files |
| Let Claude Code or another agent do the gating | AI agents (MCP) |
| Run CytoWeave from R, Python, a script or a pipeline | R and Python clients |
Start
Getting started
Start CytoWeave, the window, the sixteen example experiments, and the workflow with your own data.
Exercises
Practice an analysis on the examples and check it against the truth.
Opening data
FCS files and folders, groups, annotations, controls, and the repairs CytoWeave makes to unusual files.
Analysis
Gating
Plots, gate tools, the magic wand, scales, per-sample adjustments, Boolean populations, review and robustness.
Templates and cell types
Reuse an analysis by marker, the OMIP-101 and OMIP-090 strategies on your data, and Cell Ontology terms.
Compensation
Spillover from controls, editing a matrix, checking it against the controls, spreading and pair plots.
Spectral unmixing
Reference spectra, autofluorescence, panel quality, unmixing methods and the comparison of models.
Acquisition QC
PeacoQC, flow rate, margin events and drift, scores, and the "QC pass" gate.
Normalization and debarcoding
CytoNorm with a confounding check, bead normalization, and splitting a barcoded plate into samples.
Clustering and maps
FlowSOM, Leiden, Louvain and k-means; UMAP, t-SNE and PCA; faithfulness, and placing new samples.
Results
Tables and comparisons
Statistics across samples, comparisons with a control, rare events and detection limits, group comparisons with the right test, and screens of every population and cluster, including differential state.
Cell cycle, proliferation, kinetics and index sorting
DNA content models, dye dilution generations, a calcium flux over time, and the plate of an index sort.
Plates, dose-response and bead assays
Wells as samples, plate layouts, heat maps with Z′, EC50/IC50 curves, and LEGENDplex or CBA standard curves.
Figures, methods and certificates
Publication pages, batch reports, the methods paragraph, MIFlowCyt, checkpoints, review reports, reproducibility certificates and the change log.
Share and automate
Workspaces and large files
The library, undo, exports, archives, and samples of ten million events.
FlowJo, FACSDiva and Gating-ML
Importing FlowJo workspaces and workbenches and FACSDiva experiments, the migration report, Gating-ML 2.0 and CLR.
AI agents (MCP)
Let Claude Code or another agent gate and analyze in your window, with proposals you accept or reject.
Scripting and command line
Command-line options, and remote control from R, Python, Jupyter or shell scripts with the R and Python clients.