如何在直方图上添加误差线?

时间:2015-12-02 13:03:24

标签: matplotlib histogram errorbar

我创建了一个直方图,以查看列表中类似值的数量。

data = np.genfromtxt("Pendel-Messung.dat")
stdm = (np.std(data))/((700)**(1/2))
breite = 700**(1/2)

fig2 = plt.figure()
ax1 = plt.subplot(111)
ax1.set_ylim(0,150)
ax1.hist(data, bins=breite)
ax2 = ax1.twinx()
ax2.set_ylim(0,150/700)

plt.show()

我想在直方图的每个条形图的中间创建误差条(错误为stdm)。我知道我可以使用

创建错误栏
plt.errorbar("something", data, yerr = stdm) 

但是如何让它们从每个酒吧中间开始呢?我想过只添加breite / 2,但这给了我一个错误。

对不起,我是初学者!谢谢!

1 个答案:

答案 0 :(得分:0)

ax.hist会返回bin边缘和频率(n),因此我们可以在调用x时使用yerrorbar。此外,bins的{​​{1}}输入采用整数表示二进制数或一系列二进制数边。我想你我们试图给出hist的宽度?如果是这样,这应该有效(您只需要选择一个合适的breite):

xmax