Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python符号图中的多项式拟合_Python_Numpy_Curve Fitting - Fatal编程技术网

python符号图中的多项式拟合

python符号图中的多项式拟合,python,numpy,curve-fitting,Python,Numpy,Curve Fitting,我试图得到一个多项式拟合我的数据。目前,我正在使用numpy的polyfit来获得日志图中的最佳拟合。但我的目标是将数据拟合到符号图中。我的代码如下所示: import matplotlib.pyplot as plt import numpy as np from scipy.optimize import curve_fit import scipy.optimize as optimization l = [ 0.006, 0.01, 0.014, 0.024, 0.0

我试图得到一个多项式拟合我的数据。目前,我正在使用numpy的polyfit来获得日志图中的最佳拟合。但我的目标是将数据拟合到符号图中。我的代码如下所示:

import matplotlib.pyplot as plt
import numpy as np
from scipy.optimize import curve_fit
import scipy.optimize as optimization

l = [ 0.006,   0.01,    0.014,   0.024,   0.0346,  0.049,   0.0535,  0.0736,  0.11  ]
f = [5.3375903383330048, 60.531976422513054, 89.111502526131474, 47.132498501584969, 17.447001214543118, 5.2583622688081455, 3.7779565652126865, 1.0621247249682186, 0.1922152085619766]


logx = np.log(l)
logy = np.log(f)
coeffs = np.polyfit(logx,logy,deg=3)
poly = np.poly1d(coeffs)
yfit = lambda x: np.exp(poly(np.log(x)))
plt.loglog(l,yfit(l), ':')




plt.loglog(l,f, 'o')
plt.show()
如果您能建议我必须做哪些更改才能获得符号学最佳拟合曲线,我将不胜感激。另外,如果python中有任何其他包,请也提及它们。

我认为这一点

# log sacle    
x2 = np.linspace(np.min(l), np.max(l), 1000)
y2log = poly(np.log(x2))
plt.loglog(x2,np.exp(y2log), ':')

plt.loglog(l,f, 'o')
plt.show()

在获取日志之前,当我查看原始数据的散点图时,在我看来,第一个数据点似乎是一个可能的强异常值。获取日志可能会掩盖这一点,值得快速检查以验证此数据点的值。这是一个原始观测数据,在符号图中看起来与预期完全一致。这个loglog图并没有揭示它的真正意义,这就是为什么我需要一个符号学拟合