在matplotlib中,使用plot和hist的返回值绘制直方图

时间:2018-09-06 08:08:02

标签: python matplotlib

为了测试hist的返回值,我想通过matplotlib通过plot使用它们。 hist提供以下回报:

import matplotlib.pyplot as plt
counts, bins, bars = plt.hist(x)

其中x是要绘制直方图的数据向量。

我尝试了以下语法

plt.plot(bins,counts)

我收到以下错误

Error: x and y must have the same first dimension, but have shapes (501,) and (500,)

谢谢您的回答。

2 个答案:

答案 0 :(得分:0)

摘自plt.hist()的matplotlib文档:

  

bins:数组
   垃圾箱的边缘。长度nbins + 1(nbins左边缘   和最后一个纸槽的右边缘)。即使多个阵列也始终是单个阵列   数据集被传入。

所以返回的值bins是箱数+ 1,因为它包括最后一个箱的左箱边缘和右边缘。

您可能不想包括最后一个bin的右边缘,因此可以对数组进行切片:

plt.plot(bins[:-1], counts)

答案 1 :(得分:0)

尝试一下:

import matplotlib.pyplot as plt
plt.hist(x)
plt.show()

这是我猜中最简单的一个。