

If you want to run 28 colour flow cytometry on a 28 colour machine, you can spend hours-upon-hours compensating your data by hand, or 2 minutes with AutoSpill. (if you are using the script, you can reduce the error further - we stop the improvement at this point because it is functionally perfect). This means the large over/under-compensation effects can be completely removed from your data. What does a "perfect" spillover matrix mean? An error reduction of 100,000-fold on average, to the point where error is practically zero. AutoSpill creates a perfect spillover matrix. In high dimensional flow cytometry traditional compensation errors create artefacts. Here are a few examples of the error reduction you can get with AutoSpill:
#Flowjo tutorial video full
If you program your flow cytometry analysis in R, we have also released the AutoSpill full code, so you can add this to your bioinformatics pipeline. Dr Carly Whyte made this easy two minute tutorial: So how does AutoSpill work? If you just want to compensate your data, simply upload your single colour controls to and then copy the spillover matrix to your flow cytometry program of choice. It is thanks to AutoSpill that we can push machines to their max colours, and actually get good quality 40+ parameter flow cytometry data. AutoSpill is a beautiful example of what maths can add to #immunology, led by the talented Dr Carlos Roca. AutoSpill is a novel method for applying compensation to flow cytometry data, which reduces the error by ~100,000-fold. savefig ( 'comp.I am really thrilled to release AutoSpill onto BioRxiv.

scatter ( data, data, s = 1, edgecolor = 'none', c = z ) ax. set_title ( 'Uncompensated' ) ax = pylab. figure ( figsize = ( 8, 4 )) ax = pylab. rename_node ( 't1', 'compensated' ) fig = pylab.

rename_node ( 't1', 'uncompensated' ) data. logicle () # logicle the data so it looks more like you are used to seeing data. loadFCS ( 'E6901F0T-07_CMV pp65.fcs', auto_comp = False, transform = None ) data. load_compensate_matrix ( 'CompMatrixDenny06Nov09' ) data = fcm. Import fcm import fcm.graphics as graph import matplotlib.pyplot as pylab sidx, comp = fcm. Of working with the FCMdata data tree which will be covered in the next section Logicle transforms and compensation to a FCMdata object.
#Flowjo tutorial video how to
The code below shows how to control and manually apply The transform argument of log or automatic transformation can be prevented by setting theįurther FCMdata provides pensate(), FCMdata.logicle(),Īnd FCMdata.log() methods. The log transform can be used instead by passing By default when loading anįcs file loadFCS() will apply the logicle transform to all fluorescent channels withĪ range of 262144 (PNR in the fcs header). Return the laser names (sidx) and compensation matrix exported in the format used by Flowjo.įcm also supports the logicle and log data transforms. You to provide your own compensation matrix by passing in the comp and sidx arguments, orĬan not compensate by passing False as the auto_comp argument to loadFCS().įor convenience fcm provides the load_compensate_matrix() which will By default loadFCS() compensates fcsĭata using the compensation matrix provided in fcs file header. To try and counter fluorescent spill over. Along with reading FCS files, fcm provides methods to apply compensation
