【发布时间】:2012-06-04 09:24:02
【问题描述】:
我有一个数字列表。这个列表就像 [0,0,1,0,1 .... ] 。目前它只有二进制数字,但后来它也可以有十进制数字。我想在列表中绘制这个序列的直方图。 当我使用 matplotlib 库的标准 hist 函数时,我只得到两个条。它计算全零和全一,并向我显示带有两个条的直方图。但我想以不同的方式进行绘图。 我想要一个条数 = 列表的长度 和 每个条形的高度 = 列表中 ( position = bar# ) 处的值。
代码如下:
def plot_histogram(self,li_input,):
binseq = numpy.arange(len(li_input))
tupl = matplotlib.pyplot.hist(li_input,bins=binseq)
matplotlib.pyplot.show()
li_input 是上面讨论的列表。
我可以用一种讨厌的方式来做:
li_input_mod = []
for x in range(len(li_input)):
li_input_mod += [x]*li_input[x]
然后绘制它,但我想要更好的东西。
【问题讨论】:
-
所以基本上你想要一个情节。
标签: python numpy matplotlib