matplotlib.pyplot.hist2d#
- matplotlib.pyplot.hist2d(x, y, bins=10, *, range=None, density=False, weights=None, cmin=None, cmax=None, data=None, **kwargs)[source]#
绘制 2D 直方图。
- 参数:
- x, y类数组,形状 (n, )
输入值
- binsNone 或 int 或 [int, int] 或 类数组 或 [array, array]
分箱规格
如果为 int,则为两个维度的分箱数 (
nx = ny = bins
)。如果为
[int, int]
,则为每个维度的分箱数 (nx, ny = bins
)。如果为类数组,则为两个维度的分箱边缘 (
x_edges = y_edges = bins
)。如果为
[array, array]
,则为每个维度的分箱边缘 (x_edges, y_edges = bins
)。
默认值为 10。
- range类数组,形状(2, 2),可选
沿每个维度的分箱最左和最右边缘(如果未在 bins 参数中明确指定):
[[xmin, xmax], [ymin, ymax]]
。此范围外的所有值将被视为异常值,并且不会在直方图中进行统计。- density布尔值, 默认: False
归一化直方图。更多详细信息请参阅
hist
的 *density* 参数的文档。- weights类数组,形状 (n, ),可选
一个值数组 w_i,用于加权每个样本 (x_i, y_i)。
- cmin, cmax浮点数,默认值:None
所有计数小于 *cmin* 或大于 *cmax* 的分箱将不显示(在传递给
pcolormesh
之前设置为 NaN),并且返回的计数直方图中的这些计数也将设置为 nan。
- 返回:
- h二维数组
样本 x 和 y 的二维直方图。x 中的值沿第一维度进行直方图处理,y 中的值沿第二维度进行直方图处理。
- xedges一维数组
沿 x 轴的分箱边缘。
- yedges一维数组
沿 y 轴的分箱边缘。
- image
QuadMesh
- 其他参数:
- cmapstr 或
Colormap
,默认值:rcParams["image.cmap"]
(默认值:'viridis'
) 用于将标量数据映射到颜色的颜色映射实例或已注册的颜色映射名称。
- normstr 或
Normalize
,可选 在采用 cmap 映射颜色之前,用于将标量数据缩放到 [0, 1] 范围的归一化方法。默认情况下,使用线性缩放,将最低值映射到 0,最高值映射到 1。
如果给定,可以是以下之一
一个比例名称,例如“linear”、“log”、“symlog”、“logit”等。有关可用比例的列表,请调用
matplotlib.scale.get_scale_names()
。在这种情况下,将动态生成并实例化一个合适的Normalize
子类。
- vmin, vmax浮点型,可选
当使用标量数据且没有明确的 *norm* 时,*vmin* 和 *vmax* 定义了颜色图覆盖的数据范围。默认情况下,颜色图覆盖所提供数据的完整值范围。如果给定 *norm* 实例,则使用 *vmin*/*vmax* 是错误的(但将
str
*norm* 名称与 *vmin*/*vmax* 一起使用是可以接受的)。- colorizer
Colorizer
或 None,默认值:None 用于将颜色映射到数据的 Colorizer 对象。如果为 None,则从 norm 和 cmap 创建一个 Colorizer 对象。
- alpha
0 <= 标量 <= 1
或None
,可选 alpha 混合值。
- data可索引对象,可选
如果给定,以下参数也接受字符串
s
,如果s
是data
中的一个键,则将其解释为data[s]
x, y, weights
- **kwargs
其他参数将传递给
pcolormesh
方法和QuadMesh
构造函数。
- cmapstr 或
备注
注意
这是 pyplot 封装器,用于
axes.Axes.hist2d
。目前
hist2d
计算自己的轴限制,并且之前设置的任何限制都将被忽略。通过将
colors.LogNorm
实例传递给 *norm* 关键字参数,可以实现以对数颜色刻度渲染直方图。同样,幂律归一化(效果类似于伽马校正)可以通过colors.PowerNorm
实现。