获取matplotlib直方图函数中的bin的信息

时间:2013-10-18 05:27:21

标签: python matplotlib

我正在使用matplotlib在python中绘制直方图:

plt.hist(nparray, bins=10, label='hist')

是否可以打印包含所有垃圾箱信息的数据框,例如每个垃圾箱中的元素数量?

1 个答案:

答案 0 :(得分:27)

plt.hist 的返回值为:

  

返回:元组:(n,bins,patches)或([n0,n1,...],bin,   [patches0,patches1,...])

所以你需要做的就是适当地捕获返回值。例如:

import numpy as np
import matplotlib.pyplot as plt

# generate some uniformly distributed data
x = np.random.rand(1000)

# create the histogram
(n, bins, patches) = plt.hist(x, bins=10, label='hst')

plt.show()

# inspect the counts in each bin
In [4]: print n
[102  87 102  83 106 100 104 110 102 104]

# and we see that the bins are approximately uniformly filled.
# create a second histogram with more bins (but same input data)
(n2, bins2, patches) = plt.hist(x, bins=20, label='hst')

In [34]: print n2
[54 48 39 48 51 51 37 46 49 57 50 50 52 52 59 51 58 44 58 46]

# bins are uniformly filled but obviously with fewer in each bin.

返回的bins定义了所使用的每个bin的边缘。