PlotAxes.heatmap¶
- PlotAxes.heatmap(*args, aspect=None, **kwargs)[source]¶
Plot grid boxes with formatting suitable for heatmaps. Ensures square grid boxes, adds major ticks to the center of each grid box, disables minor ticks and gridlines, and sets
rc['cmap.discrete']
toFalse
by default..- Parameters
*args (
z
orx
,y
,z
) – The data passed as positional or keyword arguments. Interpreted as follows:If only
z
coordinates are passed, try to infer thex
andy
coordinates from theDataFrame
indices and columns or theDataArray
coordinates. Otherwise, they
coordinates arenp.arange(0, y.shape[0])
and thex
coordinates arenp.arange(0, y.shape[1])
.For
pcolor
andpcolormesh
, calculate coordinate edges usingedges
oredges2d
if centers were provided. For all other methods, calculate coordinate centers if edges were provided.If the
x
ory
coordinates arepint.Quantity
, auto-add the pint unit registry to matplotlib’s unit registry usingsetup_matplotlib
. If thez
coordinates arepint.Quantity
, pass the magnitude to the plotting command. Apint.Quantity
embedded in anxarray.DataArray
is also supported.
data (dict-like, optional) – A dict-like dataset container (e.g.,
DataFrame
orDataArray
). If passed, positional arguments can optionally be stringdata
keys and the arrays used for plotting are retrieved withdata[key]
. This is a native matplotlib feature.autoformat (
bool
, optional) – Whether thex
axis labels,y
axis labels, axis formatters, axes titles, legend titles, and colorbar labels are automatically configured when aSeries
,DataFrame
,DataArray
, orQuantity
is passed to the plotting command. Default isrc.autoformat
=True
.order (
{{'C', 'F'}}
, optional) – If'C'
(C-style row-major order),z
coordinates should be shaped(y, x)
. If'F'
(Fortran-style column-major order)z
coordinates should be shaped(x, y)
. Default is'C'
.globe (
bool
, optional) – Forproplot.axes.GeoAxes
only. Whether to enforce global coverage. Default isFalse
. When set toTrue
this does the following: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.
Makes meridional coverage “circular”, i.e. the last longitude coordinate equals the first longitude coordinate plus 360°.
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°.
aspect (
{'equal', 'auto'}
orfloat
, optional) – Modify the axes aspect ratio. The aspect ratio is of particular relevance for heatmaps since it may lead to non-square grid boxes. This parameter is a shortcut for callingset_aspect
. Default isrc['image.aspect']
='equal'
. The options are as follows:Number: The data aspect ratio.
'equal'
: A data aspect ratio of 1.'auto'
: Allows the data aspect ratio to change depending on the layout. In general this results in non-square grid boxes.
- Other Parameters
cmap (
colormap spec
, optional) – The colormap specifer, passed to theColormap
constructor function.norm (
normalizer spec
, optional) – The continuous colormap normalizer, passed to theNorm
constructor function. Ifdiscrete
isTrue
this is also used to normalize values passed toDiscreteNorm
before colors is selected.discrete (
bool
, optional) – IfFalse
, thenDiscreteNorm
is not applied to the colormap. Instead, for non-contour plots, the number of levels will be roughly controlled byrc['cmap.lut']
. This has a similar effect to usinglevels=large_number
but it may improve rendering speed. Default isFalse
forimshow
,matshow
,spy
,hexbin
,hist2d
, andheatmap
plots, butTrue
otherwise.sequential (
bool
, optional) – Userc['cmap.sequential']
='fire'
as the default colormap.diverging (
bool
, optional) – Userc['cmap.diverging']
='negpos'
as the default colormap and useDivergingNorm
as the default continuous normalizer. This will also ensure auto-generated levels include a value at zero.cyclic (
bool
, optional) – Userc['cmap.cyclic']
='twilight'
as the default colormap and modify the default arguments passed toDiscreteNorm
so that colors on either end are distinct.sequential, diverging, cyclic, qualitative (
bool
, optional) – Boolean arguments used ifcmap
is not passed. Set these toTrue
to use the defaultrc['cmap.sequential']
,rc['cmap.diverging']
,rc['cmap.cyclic']
, andrc['cmap.qualitative']
colormaps. The latter three options also change level- and norm-generation behavior.extend (
{{'neither', 'min', 'max', 'both'}}
, optional) – Whether to assign unique colors to out-of-bounds data and draw colorbar “extensions” when a colorbar is drawn.N – Shorthand for
levels
.levels (
int
orlist
offloat
, optional) – The number of level edges or a list 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 that decreasing levels will only work withpcolor
plots, notcontour
plots). Default isrc['cmap.levels']
=11
.values (
int
orlist
offloat
, optional) – The number of level centers or a list of level centers. If the former,locator
is used to generate this many level centers at “nice” intervals. If the latter, levels are inferred usingedges
. This will override anylevels
input.vmin, vmax (
float
, optional) – Used to determine level locations iflevels
orvalues
is an integer. Actual levels may not fall exactly onvmin
andvmax
, but the minimum level will be no smaller thanvmin
and the maximum level will be no larger thanvmax
. Ifvmin
orvmax
are not provided, the minimum and maximum data values are used.robust (
bool
,float
, or2-tuple
, optional) – IfTrue
andvmin
orvmax
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. Default isrc['cmap.robust']
=False
.inbounds (
bool
, optional) – IfTrue
andvmin
orvmax
were not provided, when axis limits have been explicitly restricted withset_xlim
orset_ylim
, out-of-bounds data is ignored. Default isrc['cmap.inbounds']
=True
. See alsorc['axes.inbounds']
.locator (
locator-spec
, optional) – The locator used to determine level locations iflevels
orvalues
is an integer. Passed to theLocator
constructor. Default isMaxNLocator
withlevels
integer levels.symmetric (
bool
, optional) – IfTrue
, automatically generated levels are symmetric about zero. Default is alwaysFalse
.positive (
bool
, optional) – IfTrue
, automatically generated levels are positive with a minimum at zero. Default is alwaysFalse
.negative (
bool
, optional) – IfTrue
, automatically generated levels are negative with a maximum at zero. Default is alwaysFalse
.nozero (
bool
, optional) – IfTrue
,0
is removed from the level list. This is mainly useful for single-colorcontour
plots.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
isFalse
. Extra keyword args for the labels. For contour plots, this is passed toclabel
. Otherwise, this is passed totext
.fmt (
format-spec
, optional) – Passed to theNorm
constructor, used to format number labels. You can also use theprecision
keyword arg.precision (
int
, optional) – Maximum number of decimal places for the number labels. Number labels are generated with theSimpleFormatter
formatter, which permits limiting the precision.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 bymatplotlib.contour.ContourSet.legend_elements
.colorbar (
bool
,int
, orstr
, optional) – If notNone
, this is a location specifying where to draw an inset or panel colorbar from the resulting object(s). IfTrue
, the defaultrc['colorbar.loc']
='right'
is used. Valid locations are described incolorbar
.colorbar_kw (dict-like, optional) – Extra keyword args for the call to
colorbar
.legend (
bool
,int
, orstr
, optional) – If notNone
, this is a location specifying where to draw an inset or panel legend from the resulting object(s). IfTrue
, the defaultrc['legend.loc']
='best'
is used. Valid locations are described inlegend
.legend_kw (dict-like, optional) – Extra keyword args for the call to
legend
.lw, linewidth, linewidths (optional) – The width of lines between grid boxes.
ls, linestyle, linestyles (optional) – The style of lines between grid boxes.
ec, edgecolor, edgecolors (optional) – The color for lines between grid boxes.
c, color, colors (optional) – The color(s) for the grid boxes. If not passed, the color is determined by
cmap
and thez
data.edgefix (
bool
, optional) – Whether to fix an issue where white lines appear between grid boxes in saved vector graphics. This can slow down figure rendering. Default isrc['cmap.edgefix']
=True
. IfTrue
, a default linewidth is used. If float, this linewidth is used.**kwargs – Passed to
matplotlib.axes.Axes.pcolormesh
.