cytoflow.views.bar_chart

class cytoflow.views.bar_chart.BarChartView[source]

Bases: cytoflow.views.base_views.Base1DStatisticsView

Plots a bar chart of some summary statistic

statistic

The name of the statistic to plot. Must be a key in the statistics attribute of the Experiment being plotted.

Type:(str, str)
error_statistic

The name of the statistic used to plot error bars. Must be a key in the statistics attribute of the Experiment being plotted.

Type:(str, str)
scale

The scale applied to the data before plotting it.

Type:{‘linear’, ‘log’, ‘logicle’}
variable

The condition that varies when plotting this statistic: used for the x axis of line plots, the bar groups in bar plots, etc.

Type:str
subset

An expression that specifies the subset of the statistic to plot.

Type:str
xfacet, yfacet

Set to one of the conditions in the Experiment, and a new row or column of subplots will be added for every unique value of that condition.

Type:String
huefacet

Set to one of the conditions in the in the Experiment, and a new color will be added to the plot for every unique value of that condition.

Type:String
huescale

How should the color scale for huefacet be scaled?

Type:{‘linear’, ‘log’, ‘logicle’}

Examples

Make a little data set.

>>> import cytoflow as flow
>>> import_op = flow.ImportOp()
>>> import_op.tubes = [flow.Tube(file = "Plate01/RFP_Well_A3.fcs",
...                              conditions = {'Dox' : 10.0}),
...                    flow.Tube(file = "Plate01/CFP_Well_A4.fcs",
...                              conditions = {'Dox' : 1.0})]
>>> import_op.conditions = {'Dox' : 'float'}
>>> ex = import_op.apply()

Add a threshold gate

>>> ex2 = flow.ThresholdOp(name = 'Threshold',
...                        channel = 'Y2-A',
...                        threshold = 2000).apply(ex)

Add a statistic

>>> ex3 = flow.ChannelStatisticOp(name = "ByDox",
...                               channel = "Y2-A",
...                               by = ['Dox', 'Threshold'],
...                               function = len).apply(ex2)

Plot the bar chart

>>> flow.BarChartView(statistic = ("ByDox", "len"),
...                   variable = "Dox",
...                   huefacet = "Threshold").plot(ex3)
_images/cytoflow-views-bar_chart-4.png
enum_plots(experiment)[source]

Returns an iterator over the possible plots that this View can produce. The values returned can be passed to “plot”.

plot(experiment, plot_name=None, **kwargs)[source]

Plot a bar chart

Parameters:
  • experiment (Experiment) – The Experiment to plot using this view.
  • title (str) – Set the plot title
  • xlabel, ylabel (str) – Set the X and Y axis labels
  • huelabel (str) – Set the label for the hue facet (in the legend)
  • legend (bool) – Plot a legend for the color or hue facet? Defaults to True.
  • sharex, sharey (bool) – If there are multiple subplots, should they share axes? Defaults to True.
  • row_order, col_order, hue_order (list) – Override the row/column/hue facet value order with the given list. If a value is not given in the ordering, it is not plotted. Defaults to a “natural ordering” of all the values.
  • height (float) – The height of each row in inches. Default = 3.0
  • aspect (float) – The aspect ratio of each subplot. Default = 1.5
  • col_wrap (int) – If xfacet is set and yfacet is not set, you can “wrap” the subplots around so that they form a multi-row grid by setting col_wrap to the number of columns you want.
  • sns_style ({“darkgrid”, “whitegrid”, “dark”, “white”, “ticks”}) – Which seaborn style to apply to the plot? Default is whitegrid.
  • sns_context ({“paper”, “notebook”, “talk”, “poster”}) – Which seaborn context to use? Controls the scaling of plot elements such as tick labels and the legend. Default is talk.
  • despine (Bool) – Remove the top and right axes from the plot? Default is True.
  • orientation ({‘vertical’, ‘horizontal’})
  • lim ((float, float)) – Set the range of the plot’s axis.
  • color (a matplotlib color) – Sets the colors of all the bars, even if there is a hue facet
  • errwidth (scalar) – The width of the error bars, in points
  • errcolor (a matplotlib color) – The color of the error bars
  • capsize (scalar) – The size of the error bar caps, in points

Notes

Other kwargs are passed to matplotlib.axes.Axes.bar