Matlab中用fit做曲线拟合

Posted constchar

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matlab中用fit做曲线拟合相关的知识,希望对你有一定的参考价值。

1.确定要拟合的类型

  一般情况下matlab会直接提供常用的类型,用fittype创建拟合模型。至于matlab具体提供了哪些模型,参见帮助"List of library models for curve and surface fitting"

ft = fittype( gauss1 ); %高斯拟合

 

2.要拟合的数据格式

  在最简单的情况下,即拟合两个向量X,Y,则其必须是列向量

3.拟合

 使用fit进行拟合

fitresult= fit( xData, yData, ft,);

  其输出fitresult是一个cfit型的对象(object),主要包含两个内容:1,拟合模型,即第一步中确定的拟合类型;2,拟合所得系数的值。例如对第一步中所创建的高斯模型,其fitresult 的值为

fitresult = 

     General model Gauss1:
     fo(x) =  a1*exp(-((x-b1)/c1)^2)
     Coefficients (with 95% confidence bounds):
       a1 =       45.54  (42.45, 48.64)
       b1 =     0.01011  (0.0101, 0.01012)
       c1 =   0.0002551  (0.0002353, 0.0002748)

  获得了这样一个object,如何把其中的系数提取出来呢?这个要用到coeffvalues函数

>> coeffvalues(fitresult)

ans =

   45.5426    0.0101    0.0003

  

  嗯,暂时只需要用到这些,更高级的要用的时候再说。

以上是关于Matlab中用fit做曲线拟合的主要内容,如果未能解决你的问题,请参考以下文章

急!MATLAB中用cftool工具数据拟合之后,拟合结果好坏判断

如何在matlab中用样条函数平滑曲线

matlab拟合曲线的方法有几种

急!MATLAB中用cftool工具数据拟合之后,拟合结果好坏判断

数学建模暑期集训10:拟合/matlab工具箱Curve Fitting Tool的使用

matlab自定义函数拟合