Halcom 发表于 2019-10-16 22:48:53

多项式拟合


多项式拟合:
clc,clear,close all
x=;
y=;
a1=polyfit(x,y,1);      %一次拟合
a2=polyfit(x,y,2);      %二次拟合
a3=polyfit(x,y,3);      %三次拟合
x1=;
y1=a1(2)+a1(1)*x1;    %一次多项式
y2=a2(3)+a2(2)*x1+a2(1).*x1.*x1;      %二次多项式
y3=a3(1).*x1.*x1.*x1+a3(2).*x1.*x1+a3(3)*x1+a3(4);   %三次多项式
plot(x,y,'*');
hold on
plot(x1,y1,'b--',x1,y2,'k',x1,y3,'ro-') ;
legend('原始数据','一次拟合','二次拟合','三次拟合')
p1=polyval(a1,x)    %多项式
p2=polyval(a2,x)    %多项式
p3=polyval(a3,x)    %多项式
v1=y-p1;      %误差
v2=y-p2;      %误差
v3=y-p3;      %误差
s1=norm(v1,'fro')   %计算 F-范数
s2=norm(v2,'fro')   %计算 F-范数
s3=norm(v3,'fro')   %计算 F-范数

页: [1]
查看完整版本: 多项式拟合