PlotAxes.pcolor

PlotAxes.pcolor(**kwargs)[source]

Plot irregular grid boxes.

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

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

    • For pcolor and pcolormesh, calculate coordinate edges using edges or edges2d if centers were provided. For all other methods, calculate coordinate centers if edges were provided.

    • If the x or y coordinates are pint.Quantity, auto-add the pint unit registry to matplotlib’s unit registry using setup_matplotlib. If the z coordinates are pint.Quantity, pass the magnitude to the plotting command. A pint.Quantity embedded in an xarray.DataArray is also supported.

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

  • transpose (bool, default: False) – Whether to transpose the input data. This should be used when passing datasets with column-major dimension order (x, y). Otherwise row-major dimension order (y, x) is expected.

  • order ({'C', 'F'}, default: 'C') – Alternative to transpose. 'C' corresponds to the default C-cyle row-major ordering (equivalent to transpose=False). 'F' corresponds to Fortran-style column-major ordering (equivalent to transpose=True).

  • globe (bool, default: False) – For proplot.axes.GeoAxes only. Whether to enforce global coverage. When set to True this does the following:

    1. Interpolates input data to the North and South poles by setting the data values at the poles to the mean from latitudes nearest each pole.

    2. Makes meridional coverage “circular”, i.e. the last longitude coordinate equals the first longitude coordinate plus 360°.

    3. When basemap is the backend, cycles 1D longitude vectors to fit within the map edges. For example, if the central longitude is 90°, the data is shifted so that it spans -90° to 270°.

Other Parameters
  • cmap (colormap-spec, default: rc['cmap.sequential'] = 'Fire' or rc['cmap.diverging'] = 'BuRd') – The colormap specifer, passed to the Colormap constructor function. If rc['cmap.autodiverging'] is True and the normalization range contains negative and positive values then rc['cmap.diverging'] is used. Otherwise rc['cmap.sequential'] is used.

  • cmap_kw (dict-like, optional) – Passed to Colormap.

  • c, color, colors (color-spec or sequence of color-spec, optional) – The color(s) used to create a DiscreteColormap. If not passed, cmap is used.

  • norm (norm-spec, default: Normalize or DivergingNorm) – The data value normalizer, passed to the Norm constructor function. If discrete is True then 1) this affects the default level-generation algorithm (e.g. norm='log' builds levels in log-space) and 2) this is passed to DiscreteNorm to scale the colors before they are discretized (if norm is not already a DiscreteNorm). If rc['cmap.autodiverging'] is True and the normalization range contains negative and positive values then DivergingNorm is used. Otherwise Normalize is used.

  • norm_kw (dict-like, optional) – Passed to Norm.

  • extend ({'neither', 'both', 'min', 'max'}, default: 'neither') – Direction for drawing colorbar “extensions” indicating out-of-bounds data on the end of the colorbar.

  • discrete (bool, default: rc['cmap.discrete'] = None) – If False, then DiscreteNorm is not applied to the colormap. Instead, for non-contour plots, the number of levels will be roughly controlled by rc['cmap.lut']. This has a similar effect to using levels=large_number but it may improve rendering speed. Default is True only for contouring commands like contourf and pseudocolor commands like pcolor.

  • sequential, diverging, cyclic, qualitative (bool, default: None) – Boolean arguments used if cmap is not passed. Set these to True to use the default rc['cmap.sequential'], rc['cmap.diverging'], rc['cmap.cyclic'], and rc['cmap.qualitative'] colormaps. The diverging option also applies DivergingNorm as the default continuous normalizer.

  • vmin, vmax (float, optional) – The minimum and maximum color scale values used with the norm normalizer. If discrete is False these are the absolute limits, and if discrete is True these are the approximate limits used to automatically determine levels or values lists at “nice” intervals. If levels or values were already passed as lists, these are ignored, and vmin and vmax are set to the minimum and maximum of the lists. If robust was passed, the default vmin and vmax are some percentile range of the data values. Otherwise, the default vmin and vmax are the minimum and maximum of the data values.

  • N – Shorthand for levels.

  • levels (int or sequence of float, default: rc['cmap.levels'] = 11) – The number of level edges or a sequence of level edges. If the former, locator is used to generate this many level edges at “nice” intervals. If the latter, the levels should be monotonically increasing or decreasing (note decreasing levels fail with contour plots).

  • values (int or sequence of float, default: None) – The number of level centers or a sequence of level centers. If the former, locator is used to generate this many level centers at “nice” intervals. If the latter, levels are inferred using edges. This will override any levels input.

  • robust (bool, float, or 2-tuple, default: rc['cmap.robust'] = False) – If True and vmin or vmax were not provided, they are determined from the 2nd and 98th data percentiles rather than the minimum and maximum. If float, this percentile range is used (for example, 90 corresponds to the 5th to 95th percentiles). If 2-tuple of float, these specific percentiles should be used. This feature is useful when your data has large outliers.

  • inbounds (bool, default: rc['cmap.inbounds'] = True) – If True and vmin or vmax were not provided, when axis limits have been explicitly restricted with set_xlim or set_ylim, out-of-bounds data is ignored. See also rc['cmap.inbounds'] and rc['axes.inbounds'].

  • locator (locator-spec, default: matplotlib.ticker.MaxNLocator) – The locator used to determine level locations if levels or values were not already passed as lists. Passed to the Locator constructor. Default is MaxNLocator with levels integer levels.

  • locator_kw (dict-like, optional) – Keyword arguments passed to matplotlib.ticker.Locator class.

  • symmetric (bool, default: False) – If True, the normalization range or discrete colormap levels are symmetric about zero.

  • positive (bool, default: False) – If True, the normalization range or discrete colormap levels are positive with a minimum at zero.

  • negative (bool, default: False) – If True, the normaliation range or discrete colormap levels are negative with a minimum at zero.

  • nozero (bool, default: False) – If True, 0 is removed from the level list. This is mainly useful for single-color contour plots.

  • lw, linewidth, linewidths (unit-spec, default: 0.3) – The width of lines between grid boxes. If float, units are points. If string, interpreted by units.

  • ls, linestyle, linestyles (str, default: '-') – The style of lines between grid boxes.

  • ec, edgecolor, edgecolors (color-spec, default: 'k') – The color of lines between grid boxes.

  • a, alpha, alphas (float, optional) – The opacity of the grid boxes. Inferred from cmap by default.

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

  • label (str, optional) – The legend label to be used for this object. In the case of contours, this is paired with the the central artist in the artist list returned by matplotlib.contour.ContourSet.legend_elements.

  • labels (bool, optional) – Whether to apply labels to contours and grid boxes. The text will be white when the luminance of the underlying filled contour or grid box is less than 50 and black otherwise.

  • labels_kw (dict-like, optional) – Ignored if labels is False. Extra keyword args for the labels. For contour plots, this is passed to clabel. Otherwise, this is passed to text.

  • formatter, fmt (formatter-spec, optional) – The Formatter used to format number labels. Passed to the Formatter constructor.

  • formatter_kw (dict-like, optional) – Keyword arguments passed to matplotlib.ticker.Formatter class.

  • precision (int, optional) – The maximum number of decimal places for number labels generated with the default formatter Simpleformatter.

  • 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 matplotlib.axes.Axes.pcolor.