曲线拟合(多项式函数+MATLAB实例)

一.拟合所需函数

这里我们主要考虑用多项式函数去进行曲线拟合

(1)polyfit 函数

功能: 求得结果为最小二乘法拟合的多项式系数。

格式:

p = polyfit(X,Y,n);

X,Y为进行拟合的样本数据,类型为矩阵。n为拟合的多项式次数,看散点图判断拟合次数。p为拟合后返回的多项式系数矩阵。

[p,s] = polyfit(X,Y,n);

返回两个结果,s为采样点的误差数据

[p,s,mu] = polyfit(X,Y,n);

返回三个结果,mu是一个二元向量,其中mu(1)是X的平均值即mean(X), mu(2)是X的标准差即std(X)。

(2)polyval 函数

功能: 求得在上面函数所得的p系数下,某一点预测的函数值。

格式:

polyval(p,15);

返回值为X=15时的函数值。

二.举例(预测人口)

(1)问题数据

某地区2010-2020人口数据:

x20102011201220132014201520162017201820192020
y3.95.37.29.612.917.123.231.438.650.263.0

(2)求解

我们先分步求解,后面有完整代码

【1】先查看散点图趋势

x=2010:1:2020;
y=[3.9,5.3,7.2,9.6,12.9,17.1,23.2,31.4,38.6, 50.2,63.0];
plot(x,y,'*');

在这里插入图片描述
【2】进行多项式函数拟合(这里可以尝试不同的次数择优选取)

p = polyfit(x,y,2);
plot(x,y,'*',x,polyval(p,x))

在这里插入图片描述

可以看到结果基本吻合

【3】可以继续进行预测未来的人口

polyval(p,2021)
ans =

   74.4776

(3)完整代码

x=2010:1:2020;
y=[3.9,5.3,7.2,9.6,12.9,17.1,23.2,31.4,38.6, 50.2,63.0];
p = polyfit(x,y,2);
plot(x,y,'*',x,polyval(p,x))
polyval(p,2021);

(4)注意点

我们在选取数据时,并不是数据越多越好。

在选取数据时,同时要考虑到实际情况,就比如说对人口预测,可能前10年发生了天灾人祸使得前十年的数据严重不符,那么这一阶段的数据就可以舍弃。

曲线拟合作用

预测趋势

总结规律

估算数据

  • 26
    点赞
  • 180
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论
【课程简介】 (1)本课程特别适用于MATLAB爱好者,尤其适用于热衷于用MATLAB求解高等数学问题、图像处理问题、工程计算等问题。 (2)通过本课程,你将学习到如何使用MATLAB,如何用MATLAB求解高等数学中的计算问题,可以从计算机程序视角了解到数学公式的计算原理。另外,本课程还结合了众多实例案例,让你深入了解MATLAB的数据处理之美。 【完整课程列表】 中山大学 数学实验与数学软件 第01章 MATLAB软件入门(共46页).pptx 中山大学 数学实验与数学软件 第02章 MATLAB编辑器与符号计算(一)(共43页).pptx 中山大学 数学实验与数学软件 第03章 MATLAB符号计算(二) (共41页).pptx 中山大学 数学实验与数学软件 第04章 MATLAB符号计算(三)(共47页).pptx 中山大学 数学实验与数学软件 第05章 MATLAB数值数组与数组化编程(共42页).pptx 中山大学 数学实验与数学软件 第06章 MATLAB矩阵函数与程序设计初步(共38页).pptx 中山大学 数学实验与数学软件 第07章 MATLAB数值微积分(共32页).pptx 中山大学 数学实验与数学软件 第08章 MATLAB微分方程数值解法(共33页).pptx 中山大学 数学实验与数学软件 第09章 MATLAB数值线性代数(共29页).pptx 中山大学 数学实验与数学软件 第10章 MATLAB进阶程序设计与问题求解(共40页).pptx 中山大学 数学实验与数学软件 第11章 MATLAB概率统计与曲线拟合(共45页).pptx 中山大学 数学实验与数学软件 第12章 MATLAB数字信号与声音处理(共36页).pptx 中山大学 数学实验与数学软件 第13章 MATLAB多项式运算与数据可视化(一)(共41页).pptx 中山大学 数学实验与数学软件 第14章 MATLAB数字图像处理初步(共42页).pptx 中山大学 数学实验与数学软件 第15章 MATLAB数据可视化(二)(共43页).pptx 中山大学 数学实验与数学软件 第16章 MATLAB期末复习与样题(共37页).pptx 中山大学 数学实验与数学软件 第17章 MATLAB其他常用功能与前沿应用选讲(共41页).pptx
【课程简介】 (1)本课程特别适用于MATLAB爱好者,尤其适用于热衷于用MATLAB求解高等数学问题、图像处理问题、工程计算等问题。 (2)通过本课程,你将学习到如何使用MATLAB,如何用MATLAB求解高等数学中的计算问题,可以从计算机程序视角了解到数学公式的计算原理。另外,本课程还结合了众多实例案例,让你深入了解MATLAB的数据处理之美。 【完整课程列表】 中山大学 数学实验与数学软件 第01章 MATLAB软件入门(共46页).pptx 中山大学 数学实验与数学软件 第02章 MATLAB编辑器与符号计算(一)(共43页).pptx 中山大学 数学实验与数学软件 第03章 MATLAB符号计算(二) (共41页).pptx 中山大学 数学实验与数学软件 第04章 MATLAB符号计算(三)(共47页).pptx 中山大学 数学实验与数学软件 第05章 MATLAB数值数组与数组化编程(共42页).pptx 中山大学 数学实验与数学软件 第06章 MATLAB矩阵函数与程序设计初步(共38页).pptx 中山大学 数学实验与数学软件 第07章 MATLAB数值微积分(共32页).pptx 中山大学 数学实验与数学软件 第08章 MATLAB微分方程数值解法(共33页).pptx 中山大学 数学实验与数学软件 第09章 MATLAB数值线性代数(共29页).pptx 中山大学 数学实验与数学软件 第10章 MATLAB进阶程序设计与问题求解(共40页).pptx 中山大学 数学实验与数学软件 第11章 MATLAB概率统计与曲线拟合(共45页).pptx 中山大学 数学实验与数学软件 第12章 MATLAB数字信号与声音处理(共36页).pptx 中山大学 数学实验与数学软件 第13章 MATLAB多项式运算与数据可视化(一)(共41页).pptx 中山大学 数学实验与数学软件 第14章 MATLAB数字图像处理初步(共42页).pptx 中山大学 数学实验与数学软件 第15章 MATLAB数据可视化(二)(共43页).pptx 中山大学 数学实验与数学软件 第16章 MATLAB期末复习与样题(共37页).pptx 中山大学 数学实验与数学软件 第17章 MATLAB其他常用功能与前沿应用选讲(共41页).pptx
【课程简介】 (1)本课程特别适用于MATLAB爱好者,尤其适用于热衷于用MATLAB求解高等数学问题、图像处理问题、工程计算等问题。 (2)通过本课程,你将学习到如何使用MATLAB,如何用MATLAB求解高等数学中的计算问题,可以从计算机程序视角了解到数学公式的计算原理。另外,本课程还结合了众多实例案例,让你深入了解MATLAB的数据处理之美。 【完整课程列表】 中山大学 数学实验与数学软件 第01章 MATLAB软件入门(共46页).pptx 中山大学 数学实验与数学软件 第02章 MATLAB编辑器与符号计算(一)(共43页).pptx 中山大学 数学实验与数学软件 第03章 MATLAB符号计算(二) (共41页).pptx 中山大学 数学实验与数学软件 第04章 MATLAB符号计算(三)(共47页).pptx 中山大学 数学实验与数学软件 第05章 MATLAB数值数组与数组化编程(共42页).pptx 中山大学 数学实验与数学软件 第06章 MATLAB矩阵函数与程序设计初步(共38页).pptx 中山大学 数学实验与数学软件 第07章 MATLAB数值微积分(共32页).pptx 中山大学 数学实验与数学软件 第08章 MATLAB微分方程数值解法(共33页).pptx 中山大学 数学实验与数学软件 第09章 MATLAB数值线性代数(共29页).pptx 中山大学 数学实验与数学软件 第10章 MATLAB进阶程序设计与问题求解(共40页).pptx 中山大学 数学实验与数学软件 第11章 MATLAB概率统计与曲线拟合(共45页).pptx 中山大学 数学实验与数学软件 第12章 MATLAB数字信号与声音处理(共36页).pptx 中山大学 数学实验与数学软件 第13章 MATLAB多项式运算与数据可视化(一)(共41页).pptx 中山大学 数学实验与数学软件 第14章 MATLAB数字图像处理初步(共42页).pptx 中山大学 数学实验与数学软件 第15章 MATLAB数据可视化(二)(共43页).pptx 中山大学 数学实验与数学软件 第16章 MATLAB期末复习与样题(共37页).pptx 中山大学 数学实验与数学软件 第17章 MATLAB其他常用功能与前沿应用选讲(共41页).pptx
### 回答1: CSDN上有很多关于使用Matlab进行曲线拟合的教程和文章。Matlab是一种功能强大的数学计算软件,也是数据处理和分析的重要工具之一。在CSDN上可以找到很多关于曲线拟合实例和代码,这些教程涵盖了不同的拟合方法和技巧。 首先,我们可以使用CSDN上的教程学习如何使用Matlab进行线性拟合。线性拟合是最简单的一种拟合方法,适用于线性关系较为明显的数据。这些教程通常会介绍如何读取数据、绘制曲线和使用最小二乘法进行拟合。 此外,CSDN上也有关于非线性拟合的教程。非线性拟合适用于数据呈现非线性关系的情况,如指数、对数、幂函数等。在这些教程中,我们可以学习如何选择适当的拟合函数、调整参数和进行优化,以获得最佳的拟合结果。 在CSDN上还可以发现其他更高级的拟合方法的教程,如多项式拟合、样条拟合和神经网络拟合等。这些方法通常适用于复杂的数据关系,并能提供更精确的拟合结果。 总之,CSDN提供了丰富的关于Matlab曲线拟合的资源和教程,我们可以通过学习这些教程,掌握不同的拟合方法,并且能够根据数据的特点选择合适的拟合方法,从而得到较为准确的拟合曲线。 ### 回答2: 在CSDN中,有许多关于使用Matlab进行曲线拟合的教程和文章。在Matlab中,有多种曲线拟合的方法可供选择,如线性回归、多项式拟合曲线拟合工具箱等。 首先,引入数据是进行曲线拟合的第一步。可以使用Matlab中的函数导入数据,并存储在数组或矩阵中。根据实际情况,数据可以是一维或多维的。 其次,在选择合适的拟合方法之前,需要根据数据的特点和要求来确定拟合模型。例如,如果数据呈线性关系,可以使用线性回归进行拟合;若数据为非线性,则需要选择适当的非线性拟合方法,如多项式拟合曲线拟合工具箱中的其他方法。 在确定拟合模型后,可以使用Matlab中相应的函数来进行拟合。如使用"polyfit"函数进行多项式拟合,或使用曲线拟合工具箱中的函数来进行曲线拟合。 最后,通过绘制拟合曲线来进行可视化。可以使用Matlab提供的绘图函数,如"plot"来绘制原始数据和拟合曲线。通过对比原始数据和拟合曲线,可以评估拟合的效果,并根据需要做出进一步调整。 需要注意的是,曲线拟合是一个不断探索和优化的过程,不同的拟合算法和方法可能适用于不同的数据和问题。因此,在使用Matlab进行曲线拟合时,需要灵活运用各种方法,并根据实际情况选择最合适的拟合方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

比奇堡咻飞兜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值