关于matlab拟合的问题
如果我有一堆数据,并不知道它的函数类型,如何用matlab拟合出理想的函数公式?比如有一堆数据,它的最终函数式是z=8.047888444261000+y*(-0.529...
如果我有一堆数据,并不知道它的函数类型,如何用matlab拟合出理想的函数公式?
比如有一堆数据,它的最终函数式是
z=8.047888444261000+y*(-0.5293315461329888+y*(0.001242075511495922+
y(9.156295036539717E-07)))+x*(0.4719920364562546+x*(-0.001907597312357
372+x*(-4.470798421248502E-07)))+x*y*(0.0006749191451505350+x*(5.169023
053620864E-06)+ y*(-5.566745624330738E-06)).请问这么复杂的函数式是如何拟合出来的? 展开
比如有一堆数据,它的最终函数式是
z=8.047888444261000+y*(-0.5293315461329888+y*(0.001242075511495922+
y(9.156295036539717E-07)))+x*(0.4719920364562546+x*(-0.001907597312357
372+x*(-4.470798421248502E-07)))+x*y*(0.0006749191451505350+x*(5.169023
053620864E-06)+ y*(-5.566745624330738E-06)).请问这么复杂的函数式是如何拟合出来的? 展开
展开全部
拟合分两种,一种是已知函数关系式,例如多项式、指数函数、幂函数、对数函数等等,已知关系式去拟合只要求出待定系数就可以了,另一种是不知道函数关系式,你可以先把数据点绘图,观察数据点的分布,找一个合适的函数去拟合,如果是常见的函数形式,直接用Excel添加趋势线就行了,如果是多元非线性函数,那么在matlab里调用[beta,R,J]=nlinfit(x,y,fx,beta0),记得要先定义变量,因变量,和函数关系式及系数初始值,就能求解出非线性函数的待定系数了,从而得出具体的函数表达式 ,我也是初学者,互相学习
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sftool工具,二元函数曲面拟合,以下摘自Matlab的 cflibhelp polynomial
Surfaces:
Model names for polynomial surfaces are 'polyij', where i is the degree in x
and j is the degree in y. The maximum for both i and j is five. The degree of
the polynomial is the maximum of i and j. The degree of x in each term will be
less than or equal to i, and the degree of y in each term will be less than or
equal to j. For example:
poly21 Z = p00 + p10*x + p01*y + p20*x^2 + p11*x*y
poly13 Z = p00 + p10*x + p01*y + p11*x*y + p02*y^2 + p12*x*y^2 + p03*y^3
poly55 Z = p00 + p10*x + p01*y +...+ p14*x*y^4 + p05*y^5
Surfaces:
Model names for polynomial surfaces are 'polyij', where i is the degree in x
and j is the degree in y. The maximum for both i and j is five. The degree of
the polynomial is the maximum of i and j. The degree of x in each term will be
less than or equal to i, and the degree of y in each term will be less than or
equal to j. For example:
poly21 Z = p00 + p10*x + p01*y + p20*x^2 + p11*x*y
poly13 Z = p00 + p10*x + p01*y + p11*x*y + p02*y^2 + p12*x*y^2 + p03*y^3
poly55 Z = p00 + p10*x + p01*y +...+ p14*x*y^4 + p05*y^5
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在拟合的曲线上啊,程序:
x= [250 300 350] ;
y=[-12.3 3 127 ];
p0=polyfit(x,y,2);
x0=240:1:360;
y0=polyval(p0,x0);
plot(x0,y0)
hold on
plot(x,y,'ro')
grid on
程序结果图:
x= [250 300 350] ;
y=[-12.3 3 127 ];
p0=polyfit(x,y,2);
x0=240:1:360;
y0=polyval(p0,x0);
plot(x0,y0)
hold on
plot(x,y,'ro')
grid on
程序结果图:
追问
这个是个三维的,不是二维曲线啊
这个是个三维的,不是二维曲线啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询