McClean: Matlab Code for Analyzing FACS Data: Difference between revisions

From OpenWetWare
Jump to navigationJump to search
Line 1: Line 1:
=Summary=
=Summary=
This is a collection of Matlab functions for plotting FACS data.
This is a collection of Matlab functions for plotting flow cytometry data.


All of the code requires the function fca_readfcs written by Laszlo Balkay available from the Mathworks file exchange at: [http://www.mathworks.com/matlabcentral/fileexchange/9608 FCS data reader]
All of the code requires the function fca_readfcs written by Laszlo Balkay available from the Mathworks file exchange at: [http://www.mathworks.com/matlabcentral/fileexchange/9608 FCS data reader]
Information about flow cytometry at Princeton can be found at [http://www.molbio1.princeton.edu/facility/flowcyt/ Flow Cytometry Resource Facility]


=Example=
=Example=

Revision as of 08:59, 22 February 2012

Summary

This is a collection of Matlab functions for plotting flow cytometry data.

All of the code requires the function fca_readfcs written by Laszlo Balkay available from the Mathworks file exchange at: FCS data reader

Information about flow cytometry at Princeton can be found at Flow Cytometry Resource Facility

Example

The following example code is for a series of FACS Example 1: Plotting two errorbar plots with the same x-axis and different y-axis

M1=randn(100,10);
M2=randn(100,10);
x=linspace(1,10,10);
[a,h1,h2]=plotyy(x,M1,x,M2,'EBplotyy','EBplotyy');
set(get(a(1),'Ylabel'),'String','Data 1')
set(get(a(2),'Ylabel'),'String','Data 1')
set(get(a(2),'Xlabel'),'String','Points')
title('Two Errorbar Plots')


Example 2: Plotting one errorbar plot and a non-errorbar plot on the same x-axis with different y axis

M1=randn(100,10);
x=linspace(1,10,10);
y=2*x;
[a,h1,h2]=plotyy(x,M1,x,y,'EBplotyy','plot')
set(get(a(1),'YLabel'),'String','Errorbar Plot')
set(get(a(2),'YLabel'),'String','Some Other Plot')
title('Errorbar Plot and some other Random Plot')
set(get(a(1),'XLabel'),'String','Points')

Code

function h=EBplotyy(x,y)
%INPUT:
%x-independent variable (often Time)
%y-dependent variable
%OUTPUT:
%h-handle of the errorbar graphics object
%
%Save this code in an m-file named EBplotyy.m

s=nanstd(y);
h=errorbar(x,nanmedian(y),nanstd(y));  %NOTE: You might want to change nanmedian to nanmean, nanstd to standard error, etc depending on what you want to plot

Notes

Please feel free to post comments, questions, or improvements to this protocol. Happy to have your input!

  • Megan N McClean 17:27, 30 January 2012 (EDT): Obviously this is nothing fancy, but the code has come in handy for me a number of times, so I thought I would stick it on the wiki in case it is useful to anyone else in the lab.

References

Mathworks Online Help: plotyy

Matlab Newsreader: Plotyy with errorbar

Contact

or instead, discuss this protocol.