MATLAB的曲线拟合

一般使用的是Curve Fitting Toolbox

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

(1)GUI直观实现:

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

MATLAB的曲线拟合_第1张图片
image

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

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

MATLAB的曲线拟合_第2张图片
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)  %利用 拟合模型计算新的点

你可能感兴趣的:(MATLAB的曲线拟合)