PlotAxes.bar

PlotAxes.bar(*args, **kwargs)[source]

Plot individual, grouped, or stacked bars.

Parameters
  • *args (y or x, y) – The data passed as positional or keyword arguments. Interpreted as follows:

    • If only y coordinates are passed, try to infer the x coordinates from the Series or DataFrame indices or the DataArray coordinates. Otherwise, the x coordinates are np.arange(0, y.shape[0]).

    • If the y coordinates are a 2D array, plot each column of data in succession (except where each column of data represents a statistical distribution, as with boxplot, violinplot, or when using means=True or medians=True).

    • If any arguments are pint.Quantity, auto-add the pint unit registry to matplotlib’s unit registry using setup_matplotlib. A pint.Quantity embedded in an xarray.DataArray is also supported.

  • width (float or array-like, optional) – The width(s) of the bars relative to the x coordinate step size. Can be passed as a third positional argument.

  • bottom (float or array-like, optional) – The coordinate(s) of the bottom edge of the bars. Default is 0. Can be passed as a fourth positinal argument.

  • absolute_width (bool, optional) – Whether to make the width units absolute. If True, this restores the default matplotlib behavior. Default is False.

  • data (dict-like, optional) – A dict-like dataset container (e.g., DataFrame or DataArray). If passed, positional arguments can optionally be valid data keys and the arrays used for plotting are retrieved with data[key]. This is a native matplotlib feature.

  • autoformat (bool, optional) – Whether the x axis labels, y axis labels, axis formatters, axes titles, legend titles, and colorbar labels are automatically configured when a Series, DataFrame, DataArray, or Quantity is passed to the plotting command. Default is rc.autoformat = True.

Other Parameters
  • stack, stacked (bool, optional) – Whether to stack columns of the input array or plot the bars side-by-side in groups.

  • negpos (bool, optional) – Whether to shade bars greater than zero with poscolor and bars less than zero with negcolor.

  • negcolor, poscolor (color-spec, optional) – Colors to use for the negative and positive bars. Ignored if negpos is False. Defaults are rc.negcolor = 'blue7' and rc.poscolor = 'red7'.

  • lw, linewidth, linewidths (float, optional) – The edge width for the bar patches.

  • ec, edgecolor, edgecolors (color-spec, optional) – The edge color for the bar patches.

  • cycle (cycle-spec, optional) – The cycle specifer, passed to the Cycle constructor. If the returned cycler is unchanged from the current cycler, the axes cycler will not be reset to its first position. To disable property cycling and just use black for the default color, use cycle=False, cycle='none', or cycle=() (analogous to disabling ticks with e.g. xformatter='none'). To restore the default property cycler, use cycle=True.

  • cycle_kw (dict-like, optional) – Passed to Cycle.

  • label, value (float or str, optional) – The single legend label or colorbar coordinate to be used for this plotted element. This is generally used with 1D input coordinates.

  • labels, values (list of float or list of str, optional) – The legend labels or colorbar coordinates used for each plotted element. Can be numeric or string, and must match the number of plotted elements. This is generally used with 2D input coordinates.

  • colorbar (bool, int, or str, optional) – If not None, this is a location specifying where to draw an inset or panel colorbar from the resulting object(s). If True, the default location is used. Valid locations are described in colorbar.

  • colorbar_kw (dict-like, optional) – Ignored if colorbar is None. Extra keyword args for the call to colorbar.

  • legend (bool, int, or str, optional) – If not None, this is a location specifying where to draw an inset or panel legend from the resulting object(s). If True, the default location is used. Valid locations are described in legend.

  • legend_kw (dict-like, optional) – Ignored if legend is None. Extra keyword args for the call to legend.

  • mean, means (bool, optional) – Whether to plot the means of each column for 2D y coordinates. Means are calculated with numpy.nanmean. If no other arguments are specified, this also sets barstd=True (and boxstd=True for violin plots).

  • median, medians (bool, optional) – Whether to plot the medians of each column for 2D y coordinates. Medians are calculated with numpy.nanmedian. If no other arguments arguments are specified, this also sets barstd=True (and boxstd=True for violin plots).

  • barstd, barstds (float, (float, float), or bool, optional) – Valid only if `mean` or `median` is ``True``. Standard deviation multiples for thin error bars with optional whiskers (i.e., caps). If scalar, then +/- that multiple is used. If True, the default standard deviation range of +/-3 is used.

  • barpctile, barpctiles (float, (float, float) or bool, optional) – Valid only if `mean` or `median` is ``True``. As with barstd, but instead using percentiles for the error bars. If scalar, that percentile range is used (e.g., 90 shows the 5th to 95th percentiles). If True, the default percentile range of 0 to 100 is used.

  • bardata (2 x N array or 1D array, optional) – Valid only if `mean` and `median` are ``False``. If shape is 2 x N, these are the lower and upper bounds for the thin error bars. If shape is N, these are the absolute, symmetric deviations from the central points.

  • boxstd, boxstds, boxpctile, boxpctiles, boxdata (optional) – As with barstd, barpctile, and bardata, but for thicker error bars representing a smaller interval than the thin error bars. If boxstd is True, the default standard deviation range of +/-1 is used. If boxpctiles is True, the default percentile range of 25 to 75 is used (i.e., the interquartile range). When “boxes” and “bars” are combined, this has the effect of drawing miniature box-and-whisker plots.

  • capsize (float, optional) – The cap size for thin error bars in points. Default is rc['errorbar.capsize'] = 3.0.

  • barz, barzorder, boxz, boxzorder (float, optional) – The “zorder” for the thin and thick error bars. Default is 2.5.

  • barc, barcolor, boxc, boxcolor (color-spec, optional) – Colors for the thin and thick error bars. Default is rc['boxplot.whiskerprops.color'] = 'black'.

  • barlw, barlinewidth, boxlw, boxlinewidth (float, optional) – Line widths for the thin and thick error bars, in points. The defaults rc['boxplot.whiskerprops.linewidth'] = 1.0 (bars) and four times that value (boxes).

  • boxm, boxmarker (bool or marker-spec, optional) – Whether to draw a small marker in the middle of the box denoting the mean or median position. Ignored if boxes is False. Default is 'o'.

  • boxms, boxmarkersize (size-spec, optional) – The marker size for the boxmarker marker in points ** 2. Default size is equal to (2 * boxlinewidth) ** 2.

  • boxmc, boxmarkercolor, boxmec, boxmarkeredgecolor (color-spec, optional) – Color, face color, and edge color for the boxmarker marker. Default color and edge color are 'w'.

  • inbounds (bool, optional) – Whether to restrict the default y (x) axis limits to account for only in-bounds data when the x (y) axis limits have been locked. Default is rc['axes.inbounds'] = True. See also rc['cmap.inbounds'].

  • **kwargs – Passed to bar.