2016-08-05 36 views
1

我想绘制一个高度为51020的三列柱状图。每列的宽度为1.因此,第一列的间隔[0,1]的高度为5,间隔[1,2]的第二个为10,依此类推。如何在matplotlib中正确创建hist?

plt.hist([5, 10, 20], bins=range(0,4,1)) 
plt.show() 

但作为结果,我什么都没有: enter image description here

我做了什么错?

回答

2

hist计算位于给定bin内的数据样本的数量,然后将结果频率显示为条形图。你实际上并不需要hist,因为你已经有的频率。您只需要bar即可将这些频率显示为条形图。第一个输入指定每个小节的左边缘位置,然后我们可以使用kwarg指定每个小节的宽度。

import matplotlib.pyplot as plt 

plt.bar([0, 1, 2], [5, 10, 20], width=1) 

enter image description here

+0

你能不能在这个问题再一次,好吗?我已经更新了它。 –

+0

@RomaKarageorgievich更新。 – Suever