Matlab——数据分析之曲线拟合工具cftool

曲线拟合应用程序提供了一个灵活的界面,可以在其中交互地将曲线和曲面拟合到数据并查看图。能实现多种类型的线性、非线性曲线拟合。

一、基本使用方法

  1. 将x\y按照同样维度格式输入;
  2. 命令行输入cftool,会出现一个窗口;
  3. 将x\y数据加载;
  4. 选择权重关系(同样权重就忽略此项);
  5. 选择拟合方式,这里有很多可以选的,类似高斯、指数等;
  6. 还有一个选项items,大概就是:f1(x)+f2(x),拟合会更精准。

例程如下:

x=1:0.01:2*pi;
y=sin(x);

cftool

Matlab——数据分析之曲线拟合工具cftool_第1张图片

二、细节部分

1.在Fit对话框中点击New fit

Fit name为此次曲线取名字:“cftool 曲线拟合”。当有多条曲线需要同时绘制时,每次都需要点击New fit,然后选择对应的Data set值即对应相应的数据变量就可以绘制多条曲线了。即同时拟合多条曲线。选择data set。

Matlab——数据分析之曲线拟合工具cftool_第2张图片Matlab——数据分析之曲线拟合工具cftool_第3张图片

2.选择相应类型的曲线拟合(到其它地方粘贴过来的),点击Type of fit 下拉菜单。

Matlab——数据分析之曲线拟合工具cftool_第4张图片

工具箱提供的拟合类型有:

· Custom Equations:用户自定义的函数类型

· Exponential:指数逼近,有2种类型, a*exp(b*x) 、 a*exp(b*x) + c*exp(d*x)

· Fourier:傅立叶逼近,有7种类型,基础型是 a0 + a1*cos(x*w) + b1*sin(x*w)

· Gaussian:高斯逼近,有8种类型,基础型是 a1*exp(c1-((x-b1)/c1)^2)

· Interpolant:插值逼近,有4种类型,linear、nearest neighbor、cubic spline、shape-preserving

· Polynomial:多形式逼近,有9种类型,linear ~、quadratic ~、cubic ~、4-9th degree ~

· Power:幂逼近,有2种类型,a*x^b 、a*x^b + c

· Rational:有理数逼近,分子、分母共有的类型是linear ~、quadratic ~、cubic ~、4-5th degree ~;此外,分子还包括constant型

· Smoothing Spline:平滑逼近(翻译的不大恰当,不好意思)

· Sum of Sin Functions:正弦曲线逼近,有8种类型,基础型是 a1*sin(b1*x + c1)

· Weibull:只有一种,a*b*x^(b-1)*exp(-a*x^b)

3.最后再选择一种曲线拟合下的具体类型,点击Apply按钮就可以看见所拟合的曲线了。

如果发现曲线和数据点不是很“磨合”就需要重新选择曲线类型了。

三、其他

1、Legend

图中显示着“y vs.x   untitled fit 1曲线拟合”的那个框

Matlab——数据分析之曲线拟合工具cftool_第5张图片

2、Grid

跟指令grid一样的功能,是曲线背景充满虚线框

Matlab——数据分析之曲线拟合工具cftool_第6张图片

3、Axis Limit Control

设置横轴、纵轴坐标的范围,这个按钮就可以使横纵坐标从你想要的初值到终值了。

Matlab——数据分析之曲线拟合工具cftool_第7张图片

你可能感兴趣的:(Matlab学习,matlab)