当我有x = [1, 6, 30, 55]
和y = [4000, 6000, 6000, 3800]
且已完成interpolate.UnivariateSpline
时,我只获得直线而不是拟合曲线...我也尝试过使用Rbf
和pylab
,但得到相同的图表。如何使用Python生成最佳拟合曲线?
我使用的代码是:
import numpy as np
import matplotlib.pyplot as plt
from scipy import interpolate
x = [1, 6, 30, 55]
y = [4000, 6000, 6000, 3800]
y4 = interpolate.UnivariateSpline(x, y, s = 5e8)(x)
plt.plot(x, y, 'bo', label = 'data points')
plt.plot(x, y4, 'r', label = 'curve fitting')
plt.show()
我在寻找的输出是一条曲线,而不是四条直线,它不一定经过所有点但是最合适,也是该曲线的方程式。