我有一个类似这样的数据,但是有1000分: 分数= [85,86,78,89,73,80,85,79,... 83] (我们可以假设介于(70,90)之间的1000个随机点
(编辑:我希望高斯的最大高度与直方图的最大高度相同。)
我想将此与
给出的高斯曲线进行比较def quasars_gaussian_curve(mu= 45,sigma=0.35):
x = np.linspace(mu - 3*sigma, mu + 3*sigma, 100)
plt.plot(x, stats.norm.pdf(x, mu, sigma)
所以当我这样做时: quasars_gaussian_curve(mu,sigma))
plt.hist(fraction,density = 1)
plt.show()
我明白了:
! [直方图与高斯:我需要高斯与我的直方图具有相同的高度] https://imgur.com/hqrnfCH
答案 0 :(得分:0)
好的。因此,有一个针对python的庞大软件包。不知道它在astro拟合和建模中具有此类Gaussian1D类。 如果有人遇到同样的问题,即使它不是天文学,并且想要使高斯曲线适合其给定的Amplitude,Mean和StandardDeviataion,这也可能是完美的解决方案。可能是最短的
这就是我的做法。
from astropy.modeling.models import Gaussian1D
def fit_gaussian_curve():
g1 = Gaussian1D(0.11,44,0.35 )
x = np.linspace(44 - 3*0.35, 44 + 3*0.35, 100)
plt.plot(x,g1(x))
(直方图的最大高度约为0.11,平均值为44,σ为0.35) 这是我的情节。与之前完成任务的任务进行比较。
!https://imgur.com/MYraeeD 更多信息在这里: http://docs.astropy.org/en/stable/modeling/