使用matlab提供的曲线拟合工具箱非常方便的可以进行对离散点数据的曲线拟合,使用步骤如下例子: Matlab有一个功能强大的曲线拟合工具箱 cftool ,使用方便,能实现多种类型的线性、非线性曲线拟合。下面结合我使用的 Matlab R2011b 来简单介绍如何使用这个工具箱。
假设我们要拟合的函数形式是 y=Axx + B*x, 且A>0,B>0 。
1::在命令行输入数据: 》x=[110.3323 148.7328 178.064 202.8258033 224.7105 244.5711 262.908 280.0447 296.204 311.5475]; 》y=[5 10 15 20 25 30 35 40 45 50];
2:启动曲线拟合工具箱 》cftool
3:进入曲线拟合工具箱界面“Curve Fitting tool” 1)利用X data和Y data的下拉菜单读入数据x,y
2)选择曲线拟合类型
3)自动拟合 即可在结果窗口和曲线窗口显示出拟合结果
4:工具箱提供的拟合类型如下,进行简要说明,可以尝试各种不同类型拟合效果 Custom Equations:用户自定义的函数类型 Exponential:指数逼近,有2种类型, aexp(bx) 、 aexp(bx) + cexp(dx) Fourier:傅立叶逼近,有7种类型,基础型是 a0 + a1cos(xw) + b1sin(xw) Gaussian:高斯逼近,有8种类型,基础型是 a1exp(-((x-b1)/c1)^2) Interpolant:插值逼近,有4种类型,linear、nearest neighbor、cubic spline、shape-preserving Polynomial:多形式逼近,有9种类型,linear ~、quadratic ~、cubic ~、4-9th degree ~ Power:幂逼近,有2种类型,ax^b 、ax^b + c Rational:有理数逼近,分子、分母共有的类型是linear ~、quadratic ~、cubic ~、4-5th degree ~;此外,分子还包括constant型 Smoothing Spline:平滑逼近(翻译的不大恰当,不好意思) Sum of Sin Functions:正弦曲线逼近,有8种类型,基础型是 a1sin(b1x + c1) Weibull:只有一种,ab*x(b-1)*exp(-a*xb) 感谢原文作者,仅供参考学习。 原文链接:https://blog.csdn.net/lixianjun913/article/details/9907591