软件环境:MATLAB2013a

一、多项式拟合

多项式拟合是利用多项式最佳地拟合观测数据,使得在观测数据点处的误差平方和最小。

在MATLAB中,利用函数ployfit和ployval进行多项式拟合。

函数ployfit根据观测数据及用户指定的多项式阶数得到光滑曲线的多项式表示,polyfit的一般调用格式为:P = polyfit(x,y,n)。其中x为自变量,y为因变量,n为多项式阶数。

polyval的输入可以是标量或矩阵,调用格式为

  • pv = polyval(p,a)
  • pv = polyval(p,A)

其中,p为多项式表示,a为标量,A为矩阵。当输入参数为M*N矩阵A时,函数返回值pv也是M*N矩阵,且pv(i,j) = polyval(p,A(i,j))。

1,多项式拟合示例:对ln(1+x)在[0,1]的采样数据作多项式拟合

(1)对ln(1+x)在[0,1]内采样得到观测数据x、y。

>> x = 0:0.1:1.0;
>> y = log(1+x);

(2)调用函数polyfit对观测数据x、y作三阶多项式拟合。

>> P = polyfit(x,y,3)

运行结果如下:

P对应的多项式为0.1079 - 0.3974x + 0.9825x+ 0.004x3.

(3)分别作拟合曲线和理论曲线

>> xi = 0:0.01:1.0;
>> yi = polyval(P,xi);   %多项式求值
>> plot(x,y,'ro');         %观测数据点
>> hold on;
>> plot(xi,yi,'k');         %作拟合曲线
>> plot(xi,log(1+xi),'g');    %理论曲线
>> xlabel('x');
>> ylabel('y');
>> legend('采样数据','拟合曲线','精确曲线');

效果如下:

二、指数函数拟合

1,指数函数拟合示例:对 1 - √x 在[0,1]的采样数据作指数函数拟合。

(1)对 1 - √x 在[0,1]内采样得到观测数据 x、y。

>> x = 0:0.01:0.99;
>> y = 1 - sqrt(x);

(2)调用函数polyfit对 x 、lny 作一阶多项式拟合。

>> P = polyfit(x,log(y),1)

运行结果如下:

(3)求得拟合曲线。

>> yi = exp(polyval(P,x));

(4)分别作观测数据点、拟合曲线和理论曲线。

>> yi = exp(polyval(P,x));
>> plot(x,y,'k.');
>> hold on;
>> plot(x,yi,'r');
>> xlabel('x');
>> ylabel('y');
>> legend('采样数据','拟合曲线');
>> hold off;

运行结果如下:

(5)分析拟合误差。

>> e = yi - y;
>> plot(x,e);
>> xlabel('x');
>> ylabel('误差');

运行结果如下:

三、交互式曲线拟合工具

MATLAB为用户提供了一个交互式曲线拟合工具 Basic Fitting interface。通过该工具,我们无须编写代码就可以完成一些常用的曲线拟合。

(1)载入census data数据。

>> load census

此时MATLAB基本工作空间生成两个double型列向量 cdate 和 pop,cdate 表示1790~1990内10年为间隔的年份,pop为对应年份美国的人口。

>> whos

运行结果如下:

(2)作census data点图。

>> plot(cdate,pop,'ko');

运行结果如下:

(3)在MATLAB的figure中选择Tool → Basic Fitting,即得到Basic Fitting interface 界面。

用户通过Plot fits面板选择不同的曲线拟合方式,为了便于比较,我们可以选择多种拟合方式,从而选择效果最好的一种拟合。

如果某次拟合的效果较差,MATLAB会给出警告,这时用户可以试着通过 Center and Scale X data 改善拟合效果。

如果Show equations复选框被选中,那么图形窗口会显示拟合方程;如果Plot residuals复选框被选中,那么拟合效果将显示误差余量。此外,还可以选择不同的显示类型,如Bar Plot(直方图)、Scatter Plot(散点图)、Line Plot(线图)。

如果Show norm of residuals复选框被选中,那么误差余量图将显示误差余量的范数。

单击,得到如下界面,通过该界面我们能看到拟合的数值结果:

再次单击,得到如下界面。通过该界面右侧的面板,我们可以得到任意点处拟合函数的值,如在编辑框中输入 2000:10:2080,并单击Evaluate按钮,计算结果将显示在列表框中。如果Plot evaluated result复选框被选中,那么计算结果将显示在拟合曲线中。

matlab曲线拟合相关推荐

  1. matlab 曲线拟合求导,基于matlab曲线拟合的数据预测分析

    龙源期刊网 http://www.doczj.com/doc/2f22f716cbaedd3383c4bb4cf7ec4afe05a1b148.html 基于matlab曲线拟合的数据预测分析 作者: ...

  2. matlab 曲线拟合--视频编码中PSNR计算及码率计算

    matlab 曲线拟合分为多项式拟合和一般曲线拟合 一.多项式拟合 用到的函数为: a=polyfit(xdata,ydata,n); n表示多项式的最高阶数: (我遇到的问题是要拟合一般曲线,因此多 ...

  3. matlab曲线拟合的应用,MATLAB软件在曲线拟合中的应用

    2007 年第 3 期 福 建 电 脑 MATLAB软件在曲线拟合中的应用 冯元珍 1, 屠小明 2, 罗建平 2 (1. 南京人口管理干部学院基础部 江苏 南京 210042 2. 南京医科大学数学 ...

  4. matlab曲线拟合 函数 用法以及例子

    在运行MATLAB编程进行数据的处理过程当中,我们常常用到matlab曲线拟合,但是工具箱由于需要人工交互,得到的拟合结果,需要人工的去提取,再输入,所以,工具箱拟合结果十分不适合调用,以及继续下面的 ...

  5. matlab拟合曲线poly交点,matlab曲线拟合 函数 用法以及例子,看完你就知道了

    在运行MATLAB编程进行数据的处理过程当中,我们常常用到matlab曲线拟合,但是工具箱由于需要人工交互,得到的拟合结果,需要人工的去提取,再输入,所以, 工具箱拟合结果 十分不适合调用,以及继续下 ...

  6. MATLAB曲线拟合工具箱(cftool)介绍(完结)

    本文通过实例对MATLAB曲线拟合工具箱进行详细讲解,帮助大家更容易理解曲线拟合工具箱(cftool). 目录 1.实例介绍 2. 进入曲线拟合工具箱界面 3. 加载数据 4. 加载数据 5. 选择拟 ...

  7. matlab曲线拟合sse等含义,Matlab曲线拟合SSE等含义

    Matlab曲线拟合SSE等含义 使用过Matlab的拟合.优化和统计等工具箱的网友,会经常遇到下面几个名词: SSE(和方差.误差平方和):The sum of squares due to err ...

  8. 基于最小二乘原理的Matlab曲线拟合

    基于最小二乘原理的Matlab曲线拟合方法介绍 在数据处理等工作中,经常需要对已知数据进行拟合,进而获得更加光滑流畅的曲线.曲线拟合主要基于多项式插值,三次样条曲线插值,最小二乘拟合. 考虑到最小二乘 ...

  9. matlab怎么把导入的数据拟合,matlab曲线拟合怎么做,来研究下吧

    Matlab是一个在数学领域中使用广泛的软件.它有很高的处理数据的能力.下面,小编就给大家讲解一下matlab曲线拟合怎么做. 工具/材料 matlab7.0及以上版本 操作方法 01 第一步,打开m ...

  10. matlab对矩阵拟合,matlab曲线拟合与矩阵计算.ppt

    matlab曲线拟合与矩阵计算 Matlab应用重点(1)曲线拟合 曲线拟合定义 在实际工程应用和科学实践中,经常需要寻求 两个(或多个)变量间的关系,而实际去只能 通过观测得到一些离散的数据点.针对 ...

最新文章

  1. 基于Adaboost算法的人脸检测分类器!
  2. Mac终端(Terminal)自定义颜色,字体,背景
  3. zoj 1006 Do the Untwist 簡單字符串
  4. julia有 pytorch包吗_PyTorch 有哪些坑/bug?
  5. eigen3.3.8帮助文档下载 chm_惠普7500A驱动下载-惠普hp 7500A打印机驱动下载 v28.8官方版...
  6. 每日一道剑指offer-反转链表
  7. SQL Server 2005 技术内幕之T-SQL查询——逻辑查询处理(上)
  8. 猫/路由器/网关/交换机的作用与区别
  9. 网站转换APP源代码 WebAPP源代码 网站生成APP源代码 Flutter项目 带控制端
  10. VM虚拟机完美运行macos
  11. 高响应比优先调度算法(HRRN)
  12. lg android tv 手机助手,手机如何投屏到LG电视的教程来了!
  13. B站视频、音频分开传输
  14. Linux系统分区备份工具,linux系统备份工具:clonezilla
  15. Latex 加下角标
  16. linux的系统监视器图片_用Jetson Nano构建一个价值60美元的人脸识别系统
  17. 2022-2028全球与中国嵌入式计算机市场现状及未来发展趋势
  18. 自动驾驶在挑战中进化的感知能力
  19. 老闪创业那些事儿(外传)——教人与用人的撕裂
  20. 心灵成长的六个定律 (3) - By 武志红

热门文章

  1. 你到底是前端人还是搬砖人?推荐一款国产摸鱼神器!
  2. Element UI快速入门
  3. 上海杨浦|2022年杨浦 “ 创业之星 ” 大赛
  4. 126 删除邮件 服务器,网易126邮箱中的邮件莫名奇妙被删除
  5. 软件实施工程师职业规划
  6. 老调新弹,也玩Linq To Sql批操作
  7. 招聘中的热门技术技能:SQL、Java、Python 和 Linux
  8. C语言数据结构队列的插入和删除
  9. 访问网络计算机提示0 80070035,Win7局域网连接提示0x80070035错误的解决攻略
  10. 洛谷p5710答案C语言,洛谷题单 101【入门2】分支结构