Avec python il est possible de faire une interpolation numérique en utilisant interp1d de scipy, illustration:
from scipy.interpolate import interp1d
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 20, 20)
y = np.cos(-x**2/8.0)
y = np.cos(x)
f = interp1d(x, y)
f2 = interp1d(x, y, kind='cubic')
xnew = np.linspace(0, 20, 80)
plt.plot(x,y,'o',xnew,f(xnew),'-', xnew, f2(xnew),'--')
plt.legend(['data', 'linear', 'cubic'], loc='best')
plt.ylim(-1.2,1.2)
plt.savefig('InterpolationPython.png')
plt.show()
Recherches associées
Liens | Site |
---|---|
Interpolation (scipy.interpolate) | scipy doc |
Interpolation numérique | wikipedia |
python interpolation | wikipedia |
Python Interpolation 1 of 4: 1d interpolation with interp1d | youtube |