Branching Out
New features:
- GatingStrategy & Session classes now support re-using gate IDs in different gate hierarchy branches (i.e. having a child gate "IFNg+" under both a "CD4+" and "CD8+" gate)
- Added support for FlowJo 10 ellipsoid gates
- Plotting of gates in Session class now plots only events from the parent gate
- Added plotting of Quadrant gates
- Added bokeh hover tool to scatter plots
- Re-enabled multiprocessing by default for faster processing of gates in a Session
- Updated plot colormap for better contrast with gate boundaries
API changes:
- Major cleanup of public/private modules for cleaner API
- New Quadrant class for cleaner API when creating QuadrantGate instances
- New
wsp_transforms
module containing FlowJo specific Transform sub-classes - GatingStrategy, Session - added
get_transform
andget_comp_matrix
methods - GatingStrategy, Session - added
gate_path
kwarg for ambiguous gates inget_gate
&get_gate_indices
- Session: add
sample_id
option toanalyze_samples
to process a single Sample - Session: added
ignore_missing_files
option toimport_flowjo_workspace
method for suppressing warnings about missing FCS files when importing a FlowJo WSP file - Gate class - added
get_dimension
method - Sample: rename Sample method to
as_dataframe
(consistent with Matrix class), & added options to re-order and rename columns in output DataFrame - Sample: 'fcs' is no longer the default ID when adding a compensation matrix (it is reserved for the embedded comp matrix from the
spill
metadata value) - Matrix:
fluorochromes
argument is now optional - Matrix: new method
as_dataframe
to get comp matrix as a Pandas DataFrame - Dimension: 'uncompensated' is now the default value when creating Dimension instances
Bug fixes:
- Properly support time channel data when
timestep
keyword is present in FCS metadata - Fixed display of plotted ellipses (corrected angle)
- Fixed parsing of compensated dimension references in FlowJo WSP files
- Fixed import of CSV compensation files with commented header
- Fixed creation of Sample instances from Pandas DataFrame
- Fixed parsing of FlowJo gate IDs for some WSP variants
Documentation:
- Documentation now on ReadTheDocs
- Many more docstrings for classes and methods
- Added contribution guidelines
- New tutorial notebook to demonstrate loading of FlowJo workspaces & programmatically replicating the gating strategy
- New example notebook showing compensation and Matrix class usage