MATLAB的曲线拟合

一般使用的是Curve Fitting Toolbox

分为GUI直观实现 和 代码实现

(1)GUI直观实现:

通过执行 cftool 进入到界面中, 进入的时候也可以带数据进入,打开如下的界面

image

然后就可以指定X坐标轴数据, Y坐标轴数据,拟合方式等等参数, 拟合好以后就可以把模型导出保存。

当让也可以通过Matlab主界面的Apps图标进入

image

(2)代码实现

主要有如下几个函数

fittype 指定拟合的方式,如一次拟合就是fittype('poly1') 二次拟合就是 fittype('poly2')

prepareCurveData 准备拟合的数据, 把要拟合的数据格式统一

都设置好以后就可以用 fit 来拟合数据了

fitobject = fit(x,y,fitType) 拟合完成以后会得到拟合的模型

拟合好以后,如果想利用拟合好的模型计算 新的数据,需要用到feval

y = feval(fitobject ,x)

就是这么简单。

示例代码如下

x = 1:500;y = 3*x + x.^1.5;  %待拟合的数据

[xData, yData] = prepareCurveData(x, y);
ft = fittype( 'poly1' ); %ft = fittype( 'poly2' );
[fitresult, gof] = fit( xData, yData, ft );
plot(fitresult, xData, yData);

feval(fitresult, 1000)  %利用 拟合模型计算新的点
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容