PlotAxes.fill_between

PlotAxes.fill_between(**kwargs)[source]

Plot individual, grouped, or overlaid shading patches.

Parameters
  • *args (y2 or x, y2, or x, y1, y2) – 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, y2.shape[0]).

    • If only x and y2 coordinates are passed, set the y1 coordinates to zero. This draws elements originating from the zero line.

    • If both y1 and y2 are provided, draw elements between these points. If either are 2D, draw elements by iterating over each column.

    • 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.

  • stack, stacked (bool, default: False) – Whether to “stack” area patches from successive columns of y data or plot area patches on top of each other.

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

  • autoformat (bool, default: rc.autoformat = True) – 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. Formatting of pint.Quantity unit strings is controlled by rc.unitformat = 'L'.

Other Parameters
  • where (ndarray, optional) – A boolean mask for the points that should be shaded. See this matplotlib example.

  • 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.

  • lw, linewidth, linewidths (unit-spec, default: rc['patch.linewidth'] = 0.6) – The edge width of the patch(es). If float, units are points. If string, interpreted by units.

  • ls, linestyle, linestyles (str, default: '-') – The edge style of the patch(es).

  • ec, edgecolor, edgecolors (color-spec, default: 'none') – The edge color of the patch(es).

  • fc, facecolor, facecolors, fillcolor, fillcolors (color-spec, optional) – The face color of the patch(es). The property cycle is used by default.

  • a, alpha, alphas (float, optional) – The opacity of the patch(es). Inferred from facecolor and edgecolor by default.

  • negpos (bool, default: False) – Whether to shade patches where y2 >= y1 with poscolor and where y2 < y1 with negcolor. If True this function will return a length-2 silent list of handles.

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

  • edgefix (bool or float, default: rc.edgefix = True) – Whether to fix the common issue where white lines appear between adjacent patches in saved vector graphics (this can slow down figure rendering). See this github repo for a demonstration of the problem. If True, a small default linewidth of 0.3 is used to cover up the white lines. If float (e.g. edgefix=0.5), this specific linewidth is used to cover up the white lines. This feature is automatically disabled when the patches have transparency.

  • inbounds (bool, default: rc['axes.inbounds'] = True) – 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. See also rc['axes.inbounds'] and rc['cmap.inbounds'].

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

  • labels, values (sequence of float or sequence 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 positional arguments.

  • colorbar (bool, int, or str, optional) – If not None, this is a location specifying where to draw an inset or outer colorbar from the resulting object(s). If True, the default rc['colorbar.loc'] = 'right' is used. If the same location is used in successive plotting calls, object(s) will be added to the existing colorbar in that location (valid for colorbars built from lists of artists). Valid locations are shown in in colorbar.

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

  • legend (bool, int, or str, optional) – Location specifying where to draw an inset or outer legend from the resulting object(s). If True, the default rc['legend.loc'] = 'best' is used. If the same location is used in successive plotting calls, object(s) will be added to existing legend in that location. Valid locations are shown in legend.

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

  • **kwargs – Passed to fill_between.