matplotlib.pyplot.colorbar#

matplotlib.pyplot.colorbar(mappable=None, cax=None, ax=None, **kwargs)[源代码][源代码]#

为图表添加颜色条。

参数:
可映射

matplotlib.cm.ScalarMappable`(即 `.AxesImageContourSet 等)由这个颜色条描述。这个参数对于 Figure.colorbar 方法是必需的,但对于 pyplot.colorbar 函数是可选的,该函数将默认设置为当前图像。

注意,可以“即时”创建一个 ScalarMappable 来生成不依附于先前绘制的艺术家的颜色条,例如

fig.colorbar(cm.ScalarMappable(norm=norm, cmap=cmap), ax=ax)
cax : Axes, 可选Axes,可选

将绘制颜色条的轴。如果为 None,则将创建一个新的轴,并且其空间将从 ax 中指定的轴中窃取。

ax : Axes 或可迭代对象或 Axes 的 numpy.ndarray,可选可选的轴或可迭代对象或 numpy.ndarray 的轴

一个或多个父级 Axes,从中将为新的颜色条 Axes 窃取空间。仅当未设置 cax 时,才使用此参数。

默认为包含用于创建颜色条的 mappable 的 Axes。

use_gridspecbool, 可选

如果 caxNone,则创建一个新的 cax 作为 Axes 的实例。如果 ax 使用 subplotspec 定位并且 use_gridspecTrue,那么 cax 也使用 subplotspec 定位。

返回:
colorbar颜色条
其他参数:
位置None 或 {'left', 'right', 'top', 'bottom'}

颜色条坐标轴相对于父坐标轴的位置。它还决定了颜色条的*方向*(左侧和右侧的颜色条是垂直的,顶部和底部的颜色条是水平的)。如果为None,位置将来自*方向*(如果设置了方向,垂直颜色条在右侧,水平颜色条在底部),或者如果*方向*未设置,则默认为'右侧'。

方向None 或 {'vertical', 'horizontal'}

颜色条的方向。最好设置颜色条的 位置 ,因为这同时也决定了 方向 ;为 位置方向 传递不兼容的值会引发异常。

分数浮点数, 默认值: 0.15

用于颜色条的原始轴的比例。

缩小浮点数, 默认值: 1.0

颜色条大小乘以的分数。

方面float, 默认值: 20

长宽比。

填充float, 默认值: 如果垂直为0.05, 如果水平为0.15

颜色条和新图像轴之间原始轴的分数。

锚点(浮点数,浮点数),可选

颜色条 Axes 的锚点。如果垂直,默认值为 (0.0, 0.5);如果水平,默认值为 (0.5, 1.0)。

panchor : (float, float), 或 False, 可选(浮点数, 浮点数), 或

颜色条父坐标轴的锚点。如果为 False,父坐标轴的锚点将保持不变。默认值为垂直时为 (1.0, 0.5);水平时为 (0.5, 0.0)。

扩展{'neither', 'both', 'min', 'max'}

为超出范围的值创建尖端(除非选择'neither')。这些是通过使用colormap的set_under和set_over方法为给定的colormap设置的。

extendfrac : {None, 'auto', 长度, 长度列表}toctree 是一个 reStructuredText 指令 ,这是一个非常多功能的标记。指令可以有参数、选项和内容。

如果设置为 None ,最小和最大三角形颜色条扩展的长度都将为内部颜色条长度的5%(这是默认设置)。

如果设置为 'auto',则使三角形颜色条扩展与内部方框长度相同(当 spacing 设置为 'uniform' 时)或与各自相邻的内部方框长度相同(当 spacing 设置为 'proportional' 时)。

如果是一个标量,表示最小和最大三角形颜色条扩展的长度,作为内部颜色条长度的分数。也可以给出一个包含两个分数的序列,分别表示最小和最大颜色条扩展的长度,作为内部颜色条长度的分数。

extendrect布尔值

如果 False ,颜色条的最小和最大扩展将是三角形的(默认)。如果 True ,扩展将是矩形的。

间距{'uniform', 'proportional'}

对于离散的颜色条(BoundaryNorm 或等高线),'uniform' 为每种颜色分配相同的空间;'proportional' 使空间与数据区间成比例。

刻度无或刻度列表或定位器

如果为 None,刻度将根据输入自动确定。

格式None 或 str 或 Formatter

如果为 None,则使用 ScalarFormatter。支持格式字符串,例如 "%4.2e""{x:.2e}"。也可以提供一个替代的 Formatter

drawedges布尔值

是否在颜色边界处绘制线条。

标签str

颜色条长轴上的标签。

边界, 值无或序列

如果未设置,色图将显示在0-1的刻度上。如果是序列,values 的长度必须比 boundaries 少1。对于由 boundaries 中相邻条目分隔的每个区域,将使用映射到 values 中相应值的颜色。通常仅对索引颜色(即 norm=NoNorm())或其他不寻常的情况有用。

注释

备注

这是 Figure.colorbarpyplot 包装器

如果 mappable 是一个 ContourSet,它的 extend 关键字参数会自动包含。

shrink kwarg 提供了一种简单的方法来相对于 Axes 缩放颜色条。请注意,如果指定了 cax,它将决定颜色条的大小,而 shrinkaspect 将被忽略。

为了更精确的控制,你可以手动指定绘制可映射对象和颜色条的轴对象的位置。在这种情况下,不要使用任何轴属性关键字参数。

众所周知,一些矢量图形查看器(svg 和 pdf)在颜色条的段之间渲染出白色间隙。这是由于查看器中的错误,而不是 Matplotlib 的问题。作为一种解决方法,颜色条可以渲染为重叠的段:

cbar = colorbar()
cbar.solids.set_edgecolor("face")
draw()

然而,在其他情况下,这会产生负面后果,例如在半透明图像(alpha < 1)和颜色条扩展中;因此,默认情况下不使用此解决方法(参见问题 #1188)。

使用 matplotlib.pyplot.colorbar 的示例#

等高线演示

Contour Demo

等高线图像

Contour image

等高线填充演示

Contourf demo

等值线填充图案

Contourf hatching

Contourf 和 对数颜色标度

Contourf and log color scale

带注释的热图

Annotated heatmap

带有掩码值的图像

Image with masked values

带有单个颜色条的多个图像

Multiple images with one colorbar

pcolor 图像

pcolor images

pcolormesh

pcolormesh

三重轮廓演示

Tricontour Demo

子图间距和边距

Subplots spacings and margins

颜色条

Colorbar

从颜色列表创建一个颜色映射

Create a colormap from a list of colors

椭圆集合

Ellipse Collection

使用 LineCollection 绘制多条线

Plot multiple lines using a LineCollection

坐标轴分割器

Axes divider

颜色条刻度标签

Colorbar Tick Labelling

图像教程

Image tutorial

紧凑布局指南

Tight layout guide