Python 3.x 如何显示最佳拟合方程并计算使用scipy.stats生成的直方图的r^2?

Python 3.x 如何显示最佳拟合方程并计算使用scipy.stats生成的直方图的r^2?,python-3.x,histogram,curve-fitting,goodness-of-fit,best-fit-curve,Python 3.x,Histogram,Curve Fitting,Goodness Of Fit,Best Fit Curve,我创建了μ介子衰变的柱状图,希望找到r^2值,并显示我绘制的最佳拟合曲线的函数 我正在使用scipy.stats expon.fit函数生成曲线,如何将生成的曲线显示为方程式和相应的r^2值 我试过谷歌来解决这个问题。我找到的所有东西都是散点图或np.polyfit。 我试过打印(P),但它当然只是打印有序的对 #The Code P = ss.expon.fit(data.deltaT) rX = np.linspace(0, 10000, 321) rP = ss.expon.pdf(rX,

我创建了μ介子衰变的柱状图,希望找到r^2值,并显示我绘制的最佳拟合曲线的函数

我正在使用scipy.stats expon.fit函数生成曲线,如何将生成的曲线显示为方程式和相应的r^2值

我试过谷歌来解决这个问题。我找到的所有东西都是散点图或np.polyfit。 我试过打印(P),但它当然只是打印有序的对

#The Code
P = ss.expon.fit(data.deltaT)
rX = np.linspace(0, 10000, 321)
rP = ss.expon.pdf(rX,* * *P)
plt.hist(data.deltaT,bins=30, normed=True, color='slategrey')
plt.plot(rX, rP, color='darkturquoise')
plt.show()

谢谢你的帮助

以下是一个以这种方式使用expon测试数据的示例:

import numpy as np
import scipy.stats as ss
import matplotlib.pyplot as plt

data = ss. expon.rvs(size=1000)

P = ss.expon.fit(data)
rX = np.linspace(min(data), max(data), 50)
rP = ss.expon.pdf(rX, *P)

plt.hist(data,bins=25, normed=True, color='slategrey')

plt.plot(rX, rP, color='darkturquoise')
plt.show()

应用James的修订后。最后,我将订购的rX、rP对导出到Excel文件中,并以这种方式找到趋势线。然后使用df.corr查找data.deltaT和rP之间的相关性。
谢谢大家的帮助。

谢谢,这使我的曲线拟合得更好。你知道我是如何得到曲线方程的吗?expon的scipy文档讨论了pdf方程,还指出上面代码中拟合的“P”的两个值是位置和比例参数,并讨论了如何使用这两个值。fit()方法本身在中讨论,拟合值为最大似然估计(MLE),fit()文件说明“此拟合通过最大化对数似然函数计算”,且不给出R平方值。