MATLAB曲线拟合函数
一、多项式拟合
- ployfit(x,y,n) :找到次数为 n 的多项式系数,对于数据集合 {(x_i,y_i)},满足差的平方和最小
- [P,E] = ployfit(x,y,n) :返回同上的多项式 P 和矩阵 E 。多项式系数在向量 p 中,矩阵 E 用在 ployval 函数中来计算误差
- 某数据的横坐标为 x= [0.2 0.3 0.5 0.6 0.8 0.9 1.2 1.3 1.5 1.8],纵坐标为 y = [1 2 3 5 6 7 6 5 4 1],对该数据进行多项式拟合
- 代码
clear all
clc
x = [0.2 0.3 0.5 0.6 0.8 0.9 1.2 1.3 1.5 1.8];
y = [1 2 3 5 6 7 6 5 4 1];
p5 = polyfit(x,y,5); % 5 阶多项式拟合
y5 = polyval(p5,x);
p5 = vpa(poly2sym(p5),5) %显示 5 阶多项式
p9 = polyfit(x,y,9); % 9 阶多项式
y9 = polyval(p9,x);
figure;