1

我创建了下面的直方图:

样本直方图

并且想知道是否可以绘制顶部边缘(黑色)而不是绘制整个图表(蓝色)?

还是只适合这条线以匹配分布的顶部?

我的代码是:

plt.hist(histogramData, bins=200, normed=True, cumulative=True, edgecolor='b', facecolor='None')

我尝试删除“edgecolor”和“facecolor”,但它似乎不起作用......

感谢您的帮助!

4

1 回答 1

3

我认为 pylabs 直方图代码使用 numpysnp.histogram()函数,产生箱和计数;因此,如果您将其与标准plot()命令一起使用,您就完成了(只需记住还要对累积外观进行np.cumsum()计数)。np.histogram()

编辑:关于评论,我引用numpy.histogram() 文档

返回

历史:数组

直方图的值。有关可能语义的描述,请参见 normed 和 weights。

bin 边缘:dtype 浮点数组

返回 bin 边缘 (length(hist)+1)。

因此,以所需的方式绘制数据:

hist, bins = np.histogram(data, bins=200)
plt.plot( bins[:-1], np.cumsum(hist) )

或者如果您想更精确,您甚至可以将数据值放在 bin 中心:

offset = bins[1:]-bins[:-1]
plt.plot( bins[:-1]+offset, np.cumsum(hist) )
于 2013-10-14T09:25:44.783 回答