) вам нужно предоставить массив, который варьируется до одиннадцати ... извините 8.
я есть несколько точек данных, и я использовал Scipycurve_fit
чтобы подогнать кривую к этому набору данных. Я сейчас хотел бы подготовить посадкуза диапазон точек данных, и я не могу узнать, как это сделать.
Вот простой пример, основанный на экспоненциальной аппроксимации:
import numpy as np
from scipy.optimize import curve_fit
import matplotlib.pyplot as plt
def exponential_fit(x, a, b, c):
return a*np.exp(-b*x) + c
x = np.array([0, 1, 2, 3, 4, 5])
y = np.array([30, 50, 80, 160, 300, 580])
fitting_parameters, covariance = curve_fit(exponential_fit, x, y)
a, b, c = fitting_parameters
plt.plot(x, y, 'o', label='data')
plt.plot(x, exponential_fit(x, *fitting_parameters), '-', label='Fit')
plt.axis([0, 8, 0, 2000])
plt.legend()
plt.show()
Это возвращает следующий график:
Теперь, как я могу расширить подогнанную (оранжевую) кривую, чтобы она доходила до x = 8? Обратите внимание, что я не хочу создавать дополнительные точки данных, я просто хочу расширить диапазон подогнанной кривой.
Спасибо заранее.