摘要这一篇介绍了绘制直方图的方式,我们使用np.histogram与plt.bar的方式完成了与plt.hist同样的效果,同时绘制了多个直方图与堆叠直方图(柱状图).
简介
这里会介绍绘制直方图的一些方式。其实绘制直方图可以使用plt.hist来进行绘制,参考连接 : Python数据处理之Matplotlib学习--直方图绘制。但是直方图的绘制有个问题(主要是我对直方图的操作不是很熟练),所以画一些好看的图比较麻烦。
于是这里我们会使用numpy.histogram来先完成直方图的统计,在使用柱状图来进行绘制。
numpy.histogram的介绍
这里我们简单介绍一下numpy.histogram的使用,看一下他的输入和输出。下面是一个简单的例子。
# 生成一些随机数
rng = np.random.RandomState(10)
data1 = rng.normal(size=1000)
data2 = rng.normal(size=1000)
# 查看np.histogram的输出
binRange = np.arange(-1,1,0.1)
print(binRange)
np.histogram(data1, bins=binRange)
关于np.histogram的输入,data1表示需要统计的数据, binRange是按照这里的区间进行统计。在这里binRange生成如下,表示从-1到1, 每隔0.1取一个。np.histogram就会统计各个区间的个数,如data1在[-1, -0.9)之间样本的个数。
[-1.00000000e+00 -9.00000000e-01 -8.00000000e-01 -7.00000000e-01
-6.00000000e-01 -5.00000000e-01 -4