Matlab 多项式曲线拟合polyfit

polyfit

               多项式曲线拟合

常见语法

                a = polyfit ( x, y, n)

说明

              a=polyfit(x,y,n)中参数n为x的最高阶,返回值a是n阶函数的系数,a是一个长度为n+1的行向量,

即拟合出来的公式形式应为:

 示例

用多项式拟合法求一个形如 y=ax^2+bx+c 的公式,使它与表1.1中所列数据拟合

表1.1 拟合数据表
x1925313844
y19.032.349.073.3

97.8

 解: 编写程序如下

>> x=[19 25 31 38 44];
y=[19.0 32.3 49.0 73.3 97.8];
a=polyfit(x,y,2);          %拟合2次函数
x0=19:0.1:44;              %步长为0.1
y0=polyval(a,x0);          %返回值y0是对应于x0的函数值
plot(x,y,'o',x0,y0,'r')    %画图,o表示圆圈,r表示红色red
legend('拟合前','拟合后')   %给曲线加上说明
xlabel('x');               %给x轴加上说明
ylabel('y'); 
grid on;                   %添加网格线
set(gca,'GridLineStyle',':','GridColor','k','GridAlpha',1);  %将网格线变成虚线
a                          %直接输出a

a =

    0.0497    0.0193    0.6882

所以可以得出拟合函数  y=0.0497x^2+0.0193x+0.6882

效果如下图

 

  • 42
    点赞
  • 213
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值