您的位置:首页 > 编程语言 > MATLAB

matlab进行离散点的曲线拟合

2013-08-10 23:48 281 查看
ployfit是matlab中基于最小二乘法的多项式拟合函数。最基础的用法如下:

C=polyfit(X,Y,N)

其中:

X : 需要拟合的点的横坐标

Y:需要拟合的点的纵坐标

N:以N阶多项式进行拟合

C:返回的N+1个拟合系数。

Y'=polyval(C,X')

其中:

C:N+1个拟合系数

Y':根据X'(横坐标)和拟合系数算出来的纵坐标

X=0:0.1:1;

Y=[-0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2];

C=polyfit(X,Y,2);

Z=polyval(C,X);

plot(X,Y,'r*',X,Z,'b');%n=2阶显示拟合结果

hold on

D=polyfit(X,Y,4);

M=polyval(D,X);

plot(X,M,'r')%n=4阶进行拟合的曲线结果

hold on

D=polyfit(X,Y,10);

M=polyval(D,X);

plot(X,M,'g')%n=10阶进行拟合的曲线结果

%经过上述实验n越大,即拟合阶数越大,曲线越接近离散点,但曲线越不平滑

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: