xarray.DataArray.plot.imshow#
- DataArray.plot.imshow(*args, x=None, y=None, figsize=None, size=None, aspect=None, ax=None, row=None, col=None, col_wrap=None, xincrease=True, yincrease=True, add_colorbar=None, add_labels=True, vmin=None, vmax=None, cmap=None, center=None, robust=False, extend=None, levels=None, infer_intervals=None, colors=None, subplot_kws=None, cbar_ax=None, cbar_kwargs=None, xscale=None, yscale=None, xticks=None, yticks=None, xlim=None, ylim=None, norm=None, **kwargs)[source]#
Image plot of 2D DataArray.
Wraps
matplotlib.pyplot.imshow()
.While other plot methods require the DataArray to be strictly two-dimensional,
imshow
also accepts a 3D array where some dimension can be interpreted as RGB or RGBA color channels and allows this dimension to be specified via the kwargrgb=
.Unlike
matplotlib.pyplot.imshow()
, which ignoresvmin
/vmax
for RGB(A) data, xarray will usevmin
andvmax
for RGB(A) data by applying a single scaling factor and offset to all bands. Passingrobust=True
infersvmin
andvmax
in the usual way. Additionally the y-axis is not inverted by default, you can restore the matplotlib behavior by setting yincrease=False.Note
This function needs uniformly spaced coordinates to properly label the axes. Call
DataArray.plot()
to check.The pixels are centered on the coordinates. For example, if the coordinate value is 3.2, then the pixels for those coordinates will be centered on 3.2.
- Parameters:
darray (
DataArray
) – Must be two-dimensional, unless creating faceted plots.x (
Hashable
orNone
, optional) – Coordinate for x axis. IfNone
, usedarray.dims[1]
.y (
Hashable
orNone
, optional) – Coordinate for y axis. IfNone
, usedarray.dims[0]
.figsize (
Iterable
orfloat
orNone
, optional) – A tuple (width, height) of the figure in inches. Mutually exclusive withsize
andax
.size (scalar, optional) – If provided, create a new figure for the plot with the given size: height (in inches) of each plot. See also:
aspect
.aspect (
"auto"
,"equal"
, scalar orNone
, optional) – Aspect ratio of plot, so thataspect * size
gives the width in inches. Only used if asize
is provided.ax (
matplotlib axes object
, optional) – Axes on which to plot. By default, use the current axes. Mutually exclusive withsize
andfigsize
.row (
Hashable
orNone
, optional) – If passed, make row faceted plots on this dimension name.col (
Hashable
orNone
, optional) – If passed, make column faceted plots on this dimension name.col_wrap (
int
, optional) – Use together withcol
to wrap faceted plots.xincrease (
None
,True
, orFalse
, optional) – Should the values on the x axis be increasing from left to right? IfNone
, use the default for the Matplotlib function.yincrease (
None
,True
, orFalse
, optional) – Should the values on the y axis be increasing from top to bottom? IfNone
, use the default for the Matplotlib function.add_colorbar (
bool
, optional) – Add colorbar to axes.add_labels (
bool
, optional) – Use xarray metadata to label axes.vmin (
float
orNone
, optional) – Lower value to anchor the colormap, otherwise it is inferred from the data and other keyword arguments. When a diverging dataset is inferred, setting vmin or vmax will fix the other by symmetry aroundcenter
. Setting both values prevents use of a diverging colormap. If discrete levels are provided as an explicit list, both of these values are ignored.vmax (
float
orNone
, optional) – Upper value to anchor the colormap, otherwise it is inferred from the data and other keyword arguments. When a diverging dataset is inferred, setting vmin or vmax will fix the other by symmetry aroundcenter
. Setting both values prevents use of a diverging colormap. If discrete levels are provided as an explicit list, both of these values are ignored.cmap (matplotlib colormap name or
colormap
, optional) – The mapping from data values to color space. If not provided, this will be either be'viridis'
(if the function infers a sequential dataset) or'RdBu_r'
(if the function infers a diverging dataset). See Choosing Colormaps in Matplotlib for more information.If seaborn is installed,
cmap
may also be a seaborn color palette. Note: ifcmap
is a seaborn color palette and the plot type is not'contour'
or'contourf'
,levels
must also be specified.center (
float
, optional) – The value at which to center the colormap. Passing this value implies use of a diverging colormap. Setting it toFalse
prevents use of a diverging colormap.robust (
bool
, optional) – IfTrue
andvmin
orvmax
are absent, the colormap range is computed with 2nd and 98th percentiles instead of the extreme values.extend (
{'neither', 'both', 'min', 'max'}
, optional) – How to draw arrows extending the colorbar beyond its limits. If not provided,extend
is inferred fromvmin
,vmax
and the data limits.levels (
int
or array-like, optional) – Split the colormap (cmap
) into discrete color intervals. If an integer is provided, “nice” levels are chosen based on the data range: this can imply that the final number of levels is not exactly the expected one. Settingvmin
and/orvmax
withlevels=N
is equivalent to settinglevels=np.linspace(vmin, vmax, N)
.infer_intervals (
bool
, optional) – Only applies to pcolormesh. IfTrue
, the coordinate intervals are passed to pcolormesh. IfFalse
, the original coordinates are used (this can be useful for certain map projections). The default is to always infer intervals, unless the mesh is irregular and plotted on a map projection.colors (
str
or array-like ofcolor-like
, optional) – A single color or a sequence of colors. If the plot type is not'contour'
or'contourf'
, thelevels
argument is required.subplot_kws (
dict
, optional) – Dictionary of keyword arguments for Matplotlib subplots. Only used for 2D and faceted plots. (seematplotlib.figure.Figure.add_subplot()
).cbar_ax (
matplotlib axes object
, optional) – Axes in which to draw the colorbar.cbar_kwargs (
dict
, optional) – Dictionary of keyword arguments to pass to the colorbar (seematplotlib.figure.Figure.colorbar()
).xscale (
{'linear', 'symlog', 'log', 'logit'}
orNone
, optional) – Specifies scaling for the x-axes.yscale (
{'linear', 'symlog', 'log', 'logit'}
orNone
, optional) – Specifies scaling for the y-axes.xticks (
ArrayLike
orNone
, optional) – Specify tick locations for x-axes.yticks (
ArrayLike
orNone
, optional) – Specify tick locations for y-axes.xlim (
ArrayLike
orNone
, optional) – Specify x-axes limits.ylim (
ArrayLike
orNone
, optional) – Specify y-axes limits.norm (
matplotlib.colors.Normalize
, optional) – Ifnorm
hasvmin
orvmax
specified, the corresponding kwarg must beNone
.**kwargs (optional) – Additional keyword arguments to wrapped Matplotlib function.
- Returns:
artist
– The same type of primitive artist that the wrapped Matplotlib function returns.