matplotlib.figure.Figure.colorbar#

Figure.colorbar(mappable, cax=None, ax=None, use_gridspec=True, **kwargs)[源]#

向绘图添加一个颜色条。

参数:
mappable

此颜色条描述的 matplotlib.cm.ScalarMappable(即 AxesImageContourSet 等)。此参数对于 Figure.colorbar 方法是强制性的,但对于 pyplot.colorbar 函数是可选的,后者将默认值设置为当前图像。

请注意,可以“即时”创建 ScalarMappable 以生成未附加到先前绘制的艺术家的颜色条,例如:

fig.colorbar(cm.ScalarMappable(norm=norm, cmap=cmap), ax=ax)
caxAxes,可选

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

axAxes 或可迭代对象或 numpy.ndarray 的 Axes,可选

将从中窃取空间以创建新颜色条 Axes 的一个或多个父 Axes。此参数仅在未设置 cax 时使用。

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

use_gridspecbool, 可选

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

返回:
colorbarColorbar
其他参数:
locationNone 或 {'left', 'right', 'top', 'bottom'}

相对于父 Axes,颜色条 Axes 创建的位置。它还决定了颜色条的 orientation(左右的颜色条是垂直的,上下的是水平的)。如果为 None,则位置将来自 orientation(如果已设置,则垂直颜色条在右侧,水平颜色条在底部),如果 orientation 未设置,则默认为“right”。

orientationNone 或 {'vertical', 'horizontal'}

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

fractionfloat, 默认值: 0.15

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

shrinkfloat, 默认值: 1.0

颜色条大小的乘法因子。

aspectfloat, 默认值: 20

长短尺寸比。

padfloat, 默认值: 0.05 if vertical, 0.15 if horizontal

颜色条与新图像 Axes 之间的原始 Axes 比例。

anchor(float, float), 可选

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

panchor(float, float), 或 False, 可选

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

extend{'neither', 'both', 'min', 'max'}

为超出范围的值制作尖头末端(除非是 'neither')。这些是通过 colormap 的 set_under 和 set_over 方法为给定 colormap 设置的。

extendfrac{None, 'auto', length, lengths}

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

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

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

extendrect布尔值

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

ticksNone 或 刻度列表 或 Locator

如果为 None,则刻度自动从输入中确定。

formatNone 或 str 或 Formatter

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

drawedges布尔值

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

label字符串

颜色条长轴上的标签。

boundaries, valuesNone 或 序列

如果未设置,色图将以 0-1 比例显示。如果是序列,则 values 的长度必须比 boundaries 少 1。对于 boundaries 中相邻条目界定的每个区域,将使用映射到 values 中对应值的颜色。每个区域的大小由 spacing 参数决定。通常仅适用于索引颜色(即 norm=NoNorm())或其他不寻常的情况。

spacing{'uniform', 'proportional'}

对于离散颜色条(BoundaryNorm 或等高线),'uniform'(均匀)使每种颜色占用相同的空间;'proportional'(按比例)使空间与数据间隔成比例。

备注

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

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

为了更精确的控制,您可以手动指定绘制 mappable 和颜色条的 axes 对象的位置。在这种情况下,不要使用任何 Axes 属性 kwarg。

已知一些矢量图形查看器(svg 和 pdf)在颜色条段之间渲染白色间隙。这是由于查看器中的错误,而不是 Matplotlib。作为一种变通方法,可以使用重叠段渲染颜色条

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

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

使用 matplotlib.figure.Figure.colorbar 的示例#

带 AxesDivider 的颜色条

带 AxesDivider 的颜色条

使用插入坐标轴控制颜色条的位置和大小

使用插入坐标轴控制颜色条的位置和大小

颜色条

颜色条

从颜色列表创建色彩映射

从颜色列表创建色彩映射

色彩映射范围的交互式调整

色彩映射范围的交互式调整

色彩映射归一化

色彩映射归一化

色彩映射归一化 SymLogNorm

色彩映射归一化 SymLogNorm

等高线演示

等高线演示

等高线图像

等高线图像

填充等高线演示

填充等高线演示

填充等高线图案

填充等高线图案

填充等高线和对数颜色刻度

填充等高线和对数颜色刻度

带注释的热力图

带注释的热力图

图像重采样

图像重采样

带掩码值的图像

带掩码值的图像

不规则间隔数据的等高线图

不规则间隔数据的等高线图

多个图像带一个颜色条

多个图像带一个颜色条

pcolor 图像

pcolor 图像

pcolormesh

pcolormesh

流线图

流线图

三角等高线演示

三角等高线演示

三角颜色图演示

三角颜色图演示

多色线条

多色线条

将标记属性映射到多变量数据

将标记属性映射到多变量数据

手动等高线

手动等高线

三维箱体表面图

三维箱体表面图

作为子图的三维图

作为子图的三维图

三维曲面(色彩映射)

三维曲面(色彩映射)

使用 LineCollection 绘制多条线

使用 LineCollection 绘制多条线

圆、扇形和多边形

圆、扇形和多边形

左心室靶心图

左心室靶心图

六边形分箱图

六边形分箱图

时间序列直方图

时间序列直方图

坐标轴标签位置

坐标轴标签位置

颜色条刻度标签

颜色条刻度标签

mplcvd -- 图形钩子的示例

mplcvd -- 图形钩子的示例

放置颜色条

放置颜色条

约束布局指南

约束布局指南

定制颜色条教程

定制颜色条教程

在 Matplotlib 中创建颜色映射

在 Matplotlib 中创建颜色映射

颜色映射归一化

颜色映射归一化

快速入门指南

快速入门指南