matplotlib.axes.Axes.hist #

轴。hist ( x , bins = None , range = None , density = False , weights = None ,累积= False , bottom = None , histt​​ype = 'bar' , align = 'mid' , orientation = 'vertical' , rwidth = None ,日志=颜色=, label = None , stacked = False , * , data = None , ** kwargs ) [source] #

计算并绘制直方图。

此方法用于对xnumpy.histogram中的数据进行 bin并计算每个 bin 中值的数量,然后将分布绘制为 a 或。范围密度和权 参数被转发到。BarContainerPolygonnumpy.histogram

如果数据已经被分箱和计数,使用barstairs绘制分布:

counts, bins = np.histogram(x)
plt.stairs(bins, counts)

hist()或者,通过将每个 bin 视为权重等于其计数的单个点来绘制预先计算的 bin 和计数:

plt.hist(bins[:-1], bins, weights=counts)

数据输入x可以是奇异数组、可能不同长度的数据集列表 ([ x0 , x1 , ...]) 或每列都是数据集的 2D ndarray。请注意,ndarray 形式相对于列表形式进行了转置。如果输入是一个数组,那么返回值是一个元组(nbinspatches);如果输入是一个数组序列,那么返回值是一个元组([ n0 , n1 , ...], bins , [ patch0 , patch1 , ...])。

不支持掩码数组。

参数
x (n,) 数组或 (n,) 数组序列

输入值,这需要单个数组或不需要具有相同长度的数组序列。

bins int or sequence or str, default: rcParams["hist.bins"](default: 10)

如果bins是整数,则它定义范围内等宽 bin 的数量。

如果bins是一个序列,则定义 bin 边缘,包括第一个 bin 的左边缘和最后一个 bin 的右边缘;在这种情况下,bin 的间距可能不相等。除了最后一个(最右边的)垃圾箱外,所有垃圾箱都是半开的。换句话说,如果bins是:

[1, 2, 3, 4]

那么第一个 bin 是(包括 1,但不包括 2)和第二个. 然而,最后一个 bin 是,其中 包括4。[1, 2)[2, 3)[3, 4]

如果bins是一个字符串,它是以下分箱策略之一numpy.histogram_bin_edges:'auto'、'fd'、'doane'、'scott'、'stone'、'rice'、'sturges' 或 'sqrt'。

范围元组或无,默认值:无

bin 的下限和上限范围。忽略上下异常值。如果未提供,则范围为. 如果bin是一个序列,则范围无效。(x.min(), x.max())

如果bins是一个序列或指定了范围,则自动缩放基于指定的 bin 范围而不是 x 的范围。

密度布尔值,默认值:False

如果True,则绘制并返回一个概率密度:每个 bin 将显示 bin 的原始计数除以计数总数和 bin 宽度 ( ),从而使直方图下的面积积分为 1 ( )。density = counts / (sum(counts) * np.diff(bins))np.sum(density * np.diff(bins)) == 1

如果stacked也是True,则直方图的总和归一化为 1。

weights (n,) 类数组或无,默认值:无

与x形状相同的权重数组。x中的每个值 仅将其相关权重贡献给 bin 计数(而不是 1)。如果密度True,则权重被归一化,因此密度在该范围内的积分保持为 1。

累积bool 或 -1,默认值:False

如果True,则计算直方图,其中每个 bin 给出该 bin 中的计数以及较小值的所有 bin。最后一个 bin 给出了数据点的总数。

如果密度也是True,那么直方图被归一化,使得最后一个 bin 等于 1。

如果累积是小于 0 的数字(例如 -1),则累积的方向相反。在这种情况下,如果密度也是 True,则对直方图进行归一化,使得第一个 bin 等于 1。

底部类数组,标量或无,默认值:无

每个箱子底部的位置,即。箱从 bottom到如果是标量,则每个箱的底部移动相同的量。如果是数组,则每个 bin 都会独立移动,并且底部的长度必须与 bin 的数量相匹配。如果没有,默认为 0。bottom + hist(x, bins)

histt​​ype {'bar', 'barstacked', 'step', 'stepfilled'},默认值:'bar'

要绘制的直方图类型。

  • 'bar' 是传统的条形直方图。如果给出多个数据,则条形图并排排列。

  • 'barstacked' 是一种条形直方图,其中多个数据堆叠在一起。

  • 'step' 生成默认未填充的线图。

  • 'stepfilled' 生成一个默认填充的线图。

对齐{'left', 'mid', 'right'},默认值:'mid'

直方图条的水平对齐方式。

  • 'left':条形图位于 bin 左侧边缘的中心。

  • 'mid':条在 bin 边缘之间居中。

  • 'right':条形图位于右侧 bin 边缘的中心。

方向{'垂直','水平'},默认值:'垂直'

如果“水平”,barh将用于条形直方图,底部kwarg 将是左边缘。

rwidth浮点数或无,默认值:无

条的相对宽度,作为 bin 宽度的一部分。如果 None,自动计算宽度。

如果histt​​ype是 'step' 或 'stepfilled' 则忽略。

日志布尔值,默认值:False

如果True,直方图轴将设置为对数刻度。

颜色颜色或类似颜色的数组或无,默认值:无

颜色或颜色序列,每个数据集一个。默认 ( None) 使用标准线条颜色序列。

标签str 或无,默认值:无

字符串或字符串序列以匹配多个数据集。条形图为每个数据集生成多个补丁,但只有第一个获得标签,因此legend可以按预期工作。

堆叠的布尔值,默认值:False

If True, 多个数据堆叠在一起 False如果 histt​​ype 为 'bar' 则多个数据并排排列,如果 histt​​ype 为 'step' 则彼此重叠

返回
n数组或数组列表

直方图 bin 的值。有关可能语义的描述,请参见密度权重。如果输入x是一个数组,那么这是一个长度为nbins的数组。如果输入是一个数组序列,那么这是一个数组列表,其中每个数组的直方图值以相同的顺序排列。即使不使用加权或归一化,数组n (或其元素数组)的 dtype 也将始终为 float。[data1, data2, ...]

阵列

垃圾箱的边缘。长度 nbins + 1(最后一个 bin 的 nbins 左边缘和右边缘)。即使传入多个数据集,也始终是单个数组。

补丁BarContainer或列表的单个Polygon或此类对象的列表

如果有多个输入数据集,则用于创建直方图或此类容器列表的单个艺术家的容器。

其他参数
数据可索引对象,可选

如果给定,以下参数也接受一个字符串s,它被解释为data[s](除非这引发异常):

x ,权重

**kwargs

Patch特性

也可以看看

hist2d

带有矩形箱的二维直方图

hexbin

带有六边形 bin 的 2D 直方图

笔记

对于大量 bin (>1000),如果histt​​ype设置为“step”或“stepfilled”而不是“bar”或“barstacked”,则绘图速度会明显加快。

使用#的示例matplotlib.axes.Axes.hist

带有直方图的散点图

带有直方图的散点图

带有直方图的散点图
轴演示

轴演示

轴演示
使用直方图绘制累积分布

使用直方图绘制累积分布

使用直方图绘制累积分布
直方图(hist)函数的一些特点

直方图(hist)函数的一些特点

直方图(hist)函数的一些特点
具有多个数据集的直方图(hist)函数

具有多个数据集的直方图(hist)函数

具有多个数据集的直方图(hist)函数
放置文本框

放置文本框

放置文本框
简单轴标签

简单轴标签

简单轴标签
黑客样式表的贝叶斯方法

黑客样式表的贝叶斯方法

黑客样式表的贝叶斯方法
散点直方图(可定位轴)

散点直方图(可定位轴)

散点直方图(可定位轴)
动画直方图

动画直方图

动画直方图
脑电图核磁共振

脑电图核磁共振

脑电图核磁共振
快速入门指南

快速入门指南

快速入门指南
艺术家教程

艺术家教程

艺术家教程
路径教程

路径教程

路径教程
转换教程

转换教程

转换教程
历史(x)

历史(x)

历史(x)