两种方法
1.工具箱使用步骤(更详细)
- 输入待拟合的变量x
- 输入待拟合的变量y
- 输入cftool进入可视化操作界面
.
之后便进入拟合工具箱
其中左下角方框有一系列拟合参数的结果
例如自定义函数
2. matlab代码
%自定义拟合函数f(t)=a*cos(k*t)*exp(w*t)
clc,clear
syms t
x=[0;0.4;1.2;2;2.8;3.6;4.4;5.2;6;7.2;8;9.2;10.4;11.6;12.4;13.6;14.4;15];%列向量
x1 = [0.042;0.343;0.561;0.749;0.881];
y1 = [0.02923133;0.060884695;0.077608525;0.08834706;0.119053471];
y=[1;0.85;0.29;-0.27;-0.53;-0.4;-0.12;0.17;0.28;0.15;-0.03;-0.15;-0.071;0.059;0.08;0.032;-0.015;-0.02];
% f=fittype('a*cos(k*t)*exp(w*t)','independent','t','coefficients',{'a','k','w'}); %fittype是自定义拟合函数
f = fittype('a*b*x/(1-b*x)/(1-b*x+a*b*x)','independent','x','coefficients',{'a','b'});
% cfun=fit(x,y,f); %根据自定义拟合函数f来拟合数据x,y
% xi=0:0.1:20;
% yi=cfun(xi);
% plot(x,y,'r*',xi,yi,'b-');
cfun=fit(x1,y1,f); %根据自定义拟合函数f来拟合数据x,y
xi=0:0.1:1;
yi=cfun(xi);
plot(x1,y1,'r*',xi,yi,'b-');