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

效果如下图

 

©️2021 CSDN 皮肤主题: 技术工厂 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值