我有以下直方图:
蓝色列是数据,红色线是理论线。我通过首先绘制直方图,然后将理论曲线(最大值为1)缩放到直方图峰值的近似值来生成此值。我想通过使直方图的峰值也为1来避免这种手动缩放。我如何用Python做到这一点?
A previous question提供了获取峰值的方法(在我的情况下为122),但我无法弄清楚如何使用它来缩放直方图。看起来,一旦我调用hist命令,它将创建当前直方图,这是有意义的,因为直方图是什么 - 列不应该采用小数值。换句话说,我需要一种不同的方法。任何帮助表示赞赏。
答案 0 :(得分:2)
再次呼叫plt.hist
,但使用weights
参数指定缩放系数:
plt.hist(hdata, bins=40, weights=[1/y.max()]*x_len)