matlab拟合四次函数表达式,⽤matlab编写程序求以幂函数作基函数的3次、4次多项式。。。
共回答了18个问题采纳率:83.3%
x=[0.0 0.1 0.2 0.3 0.5 0.8 1.0]; %输⼊数组
>> y=[1.0 0.41 0.50 0.61 0.91 2.02 2.46];
>> f1=inline(poly2sym(polyfit(x,y,3))); %polyfit拟合得到系数,poly2sym由系数得到多项式,inline转换内联函数
>> f2=inline(poly2sym(polyfit(x,y,4)));
>> plot(x,y,'*'); %绘散点图
>> for i=1:7 %text给各点做坐标标注,num2str转换数值为字符,strcat字符串连接
text(x(i),y(i)+0.1,strcat('(',num2str(x(i)),',',num2str(y(i)),')'));
end;
>> xlabel('x'); %给x轴做标注
>> ylabel('y');
>> figure; %打开新的绘图窗⼝
>> y1=f1(x); %⽤拟合得到的式⼦求y值,如果想要拟合曲线更光滑,可将x的值更细化
>> y2=f2(x);
>> plot(x,y1,'-r*'); %绘3次拟合曲线图
>> for i=1:7
matlab定义函数表达式text(x(i),y1(i)+0.1,strcat('(',num2str(x(i)),',',num2str(y1(i)),')'));
end;
>> xlabel('x');
>> ylabel('y');
>> figure;
>> plot(x,y2,'-bo'); %绘3次拟合曲线图
>> for i=1:7
text(x(i),y2(i)+0.1,strcat('(',num2str(x(i)),',',num2str(y2(i)),')'));
end;
>> xlabel('x');
>> ylabel('y');
1年前
1
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论