拟合直方图对数比例python

时间:2017-12-07 13:11:10

标签: python matplotlib histogram curve-fitting logarithm

我需要在python中使用直方图拟合曲线。我之前用正常的直方图做了这个,这次我试图用x中的对数图做同样的事情。 这是我的代码:

import numpy as np
import matplotlib.pyplot as plt

//radius is my np.array
Rmin = min(radius)
Rmax = max(radius)
logmin = np.log(Rmin)
logmax = np.log(Rmax)
bins = 10**(np.arange(logmin,logmax,0.1))
plt.figure()
plt.xscale("log")
plt.hist(radius, bins, color = 'red')
plt.show()

这显示了高斯分布。我试图用它来拟合曲线,我所做的是在show()命令之前计算以下内容。

(mu, sigma) = np.log(norm.fit((radius)))
y = (mlab.normpdf(np.log(bins), mu, sigma))
plt.plot(bins, y, 'b--', linewidth=2)

我的结果是关于我的分布的非常扁平的曲线。 有人能帮助我吗?

我无法添加整个数组r(50000点),因此我添加了一张显示结果的图片。 See image

0 个答案:

没有答案