[matlab]曲线拟合(整理)


 

一、曲线拟合是要找到一条光滑曲线,使其最佳地拟合数据,该曲线不必经过数据点

二、曲线拟合的内容:

  1、光滑曲线的形式是怎么样:多项式模型?指数模型?其他函数模型

  2、最佳拟合的概念: 常用的误差准则是误差平方和最小,也可以是最大误差最小准则,误差绝对值和等。

三、Matlab多项式拟合函数(指数拟合可以转换为多项式拟合来做,略):

  ployfit(x,y,n);   %返回值为多项式的各个系数

    x  自变量

    y  应变量

    n  多项式阶数

 

  polyval(P,xi);   %返回值为多项式在xi(可以是数组)的取值

    P  多项式的系数数组

    xi  求值点  

 

 

  例子如:ploy1.m

 

  
 1 clear;clc;
 2 %多项式拟合
 3 x = 0:0.1:1;
 4 y = log(1+x);
 5 
 6 P = polyfit(x,y,3); %3阶多项式拟合
 7 
 8 xi = 0:0.01:1.0;
 9 yi =polyval(P,xi);
10 plot(x,y,'+');   %以圈画出 Marker Specifiers
11 hold on;
12 plot(xi,yi,'k','Color','r');
13 hold on;
14 plot(xi,log(1+xi),'g');
15 xlabel('x');
16 ylabel('y');
17 
18 
19 legend('采样数据','拟合数据','精确数据');
poly1.m

 

 

 

   

 

四、工具箱 cftool (Curve Fitting Tool)  

  Matlab 命令行中输入 cftool  或者在App中进入Curve Fitting ,工具用起来挺简单的,不赘述。

 

 


 

Ref

1、《Matlab使用详解》  董霖 科学出版社  

2、http://jingyan.baidu.com/article/cbf0e500f02b572eaa289399.html  MATLAB拟合工具箱 cftool 用法及实例

posted @ 2015-05-17 22:07  Alimy  阅读(16285)  评论(0编辑  收藏  举报