와 함수를 피팅 : 나는 다음과 같은 그래프의 일부에 기능을 맞추려고 오전 heavyside 단계 기능
내가 신호가 기하 급수적으로 증가 시작 시간을 찾고 싶어요. 이렇게하려면 데이터에 지수 곡선을 곱해서 heavyside 스텝 함수를 곱합니다.
나는를 기대 : 만 지수 부분은 내가 다음과 같은 그래프를 얻을 수에 맞게 때
def fit(x, a, b, c, d, e):
return np.heaviside(x-a, 0.5)*b*np.exp(c*x-d)+e
parameter, covariance = curve_fit(fit, fitx, fity)
x = np.linspace(min(fitx), max(fitx), 1000)
plt.plot(fitx, fity)
plt.plot(x, fit(x, *parameter), 'b-', label='fit')
plt.show()
결과는 어떻게 든 직선
입니다 x 축의 직선, 이미지 2의 지수 그래프 다음에 아무도 내가 잘못 갔는지 알 수 있습니까?
'a'매개 변수의 적절한 시작점을 제공해야 할 수도 있습니다. –
많은 도움을 주신 @IgnacioVergaraKausel, 감사합니다! – tomM
피팅이있는 문제의 70 %가 불량한 시작점이고, 나머지는 주로 잘못 정의 된 맞춤 함수입니다. 나는 답을 주석으로 칠하겠다. –