import numpy as np
from astropy import modeling
import matplotlib.pyplot as plt
from scipy import optimize
def gaussian(x, amplitude, mean, stddev):
return amplitude * np.exp(-((x - mean)/4/stddev)**2)
# the data
m = modeling.models.Gaussian1D(amplitude=10, mean=100, stddev=10)
x = np.linspace(0, 400, 400)
data = m(x)
# fitting
popt, _ = optimize.curve_fit(gaussian, x, data)
plt.figure(0)
plt.plot(x, data)
plt.plot(x, gaussian(x, *popt))
plt.show()
Я запускаю это, чтобы выполнить нормальную настройку распределения. Но это дало мне черту. Не могу понять, почему.
Однако, если я уменьшу среднее значение до 45, это даст хорошую подгонку. Это конструктивные дефекты упаковки Сципи?