Peakfitting mit scipy.optimize
Verfasst: Sonntag 17. November 2019, 18:10
Hey Community,
da ich zur Auswertung u.a. die Position des Maximums benötige, lasse ich via scipy optimize einen fit anfertigen. Hierzu verwende ich aktuell eine Gaussian funktion:

Wie ihr sehen könnt, ist der fit nicht optimal. Speziell die Postion des Maximums ist sehr weit off, was für die weitere Auswertung gravierend ist.
Jemand eine Idee, welche Funktion sich besser anfitten lässt?
da ich zur Auswertung u.a. die Position des Maximums benötige, lasse ich via scipy optimize einen fit anfertigen. Hierzu verwende ich aktuell eine Gaussian funktion:
Code: Alles auswählen
def Gauss(x, intensity, maximum, width):
return 100 - (intensity * np.exp(-(x - maximum) ** 2 / (2 * width ** 2)))
Code: Alles auswählen
def fit_Gauss(x, y, initvals):
return curve_fit(Gauss, x, y, p0=initvals)

Wie ihr sehen könnt, ist der fit nicht optimal. Speziell die Postion des Maximums ist sehr weit off, was für die weitere Auswertung gravierend ist.
Jemand eine Idee, welche Funktion sich besser anfitten lässt?