计算一组数据的柱状图。
代码实现:numpy.histogram(a, bins=10, range=None, normed=None, weights=None, density=None)参数说明:
a:输入数据数组;
bins:指定统计的区间个数,可以是一个整数,也可以是一个数组,默认值为10;
range:表示的是范围,范围仅为 (a.min(), a.max());
weights:表示权重
density:为True时,返回每个区间的概率密度;为False,返回每个区间中元素的个数
import numpy as np
import matplotlib.pyplot as plt
x=np.zeros(11)
for i in range(10):
x[i]=i
print(x)
(hist, bin_edges) = np.histogram(x, bins=12,range=(0,12))
print(hist, bin_edges)
plt.hist(x,bins=12,range=(0,12))
说明:bins=12,说明有12个箱子,范围是0到12,那么均分下来,分成[0,1,2,...12],在[0,1)之间的数是0,有2个, 在[1,2)之间的数是1,有1个...
x=np.zeros(11)
for i in range(10):
x[i]=i
x[10]=11
print(x)
(hist, bin_edges) = np.histogram(x, bins=12)
print(hist, bin_edges)
plt.hist(x,bins=12)
说明:bins=12,说明有12个箱子,范围是0到11,即x中最小数和最大数,那么均分下来,分成[0,0.91,...11],在[0,0.91)之间的数是0,有1个, 在[0.91,1.83)之间的数是1,有1个...
x=np.zeros(11)
for i in range(10):
x[i]=i
x[10]=11
print(x)
(hist, bin_edges) = np.histogram(x, bins=range(12))
print(hist, bin_edges)
plt.hist(x, bins=range(12))
说明:bins=range(12),说明有11个箱子,范围是0到11,这里和x无关,分成[0,1,...,11],在[0,1)之间的数是0,有1个, 在[1,2)之间的数是1,有1个...



