导航:首页 > 编程大全 > 使用matlab曲线拟合工具箱做曲线拟合

使用matlab曲线拟合工具箱做曲线拟合

发布时间:2021-02-23 12:36:25

『壹』 如何利用MATLAB对数据进行曲线拟合

您好,这样的:一、 单一变量的曲线逼近
Matlab有一个功能强大的曲线拟合工具箱 cftool ,使用方便,能实现多种类型的线性、非线
性曲线拟合。下面结合我使用的 Matlab R2007b 来简单介绍如何使用这个工具箱。
假设我们要拟合的函数形式是 y=A*x*x + 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)点击“Data”按钮,弹出“Data”窗口;
(2)利用X data和Y data的下拉菜单读入数据x,y,可修改数据集名“Data set name”,然
后点击“Create data set”按钮,退出“Data”窗口,返回工具箱界面,这时会自动画出数
据集的曲线图;
(3)点击“Fitting”按钮,弹出“Fitting”窗口;
(4)点击“New fit”按钮,可修改拟合项目名称“Fit name”,通过“Data set”下拉菜单
选择数据集,然后通过下拉菜单“Type of fit”选择拟合曲线的类型,工具箱提供的拟合类
型有:
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(-((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)
选择好所需的拟合曲线类型及其子类型,并进行相关设置:
——如果是非自定义的类型,根据实际需要点击“Fit options”按钮,设置拟合算法、修改
待估计参数的上下限等参数;
——如果选Custom Equations,点击“New”按钮,弹出自定义函数等式窗口,有“Linear
Equations线性等式”和“General Equations构造等式”两种标签。
在本例中选Custom Equations,点击“New”按钮,选择“General Equations”标签,输入函
数类型y=a*x*x + b*x,设置参数a、b的上下限,然后点击OK。

『贰』 matlab中利用拟合工具箱如何找出最佳拟合曲线

可以但比较困难,需要太多的数据,三维以上难以在图上直观表达,而公式是可以的。对于多维情况,在曲线拟合的情况,每增加一个变量,所需数据都会以几何级数增加,这个叫维灾,所以不过不是万不得已要避免。

『叁』 matlab如何进行曲线拟合

先把点所对应的坐标表示出来,再用MATLAB函数进行多项式拟合
举例:
程序如下:回
x=[1,
2,
3,
4,
5,
6,
7,
8,
9,
10]
y=[1.2,
3,
4,
4,
5,
4.7,
5,
5.2,
6,
7.2]
注:
一次多项式拟合答:
p1
=
polyfit(x,y,1)
三次多项式拟合:
p3
=
polyfit(x,y,3)
plot
原始数据、一次拟合曲线和三次拟合曲线
x2=1:0.1:10;
y1=polyval(p1,x2)
y3=polyval(p3,x2)
plot(
x,
y,
’*’,
x2,
y1,
‘:’,
x2,
y3)
如果满意请采纳!

『肆』 matlab曲线拟合工具箱怎么用

不是matlab安装的问题,这个问题我也遇到过,遍求解答无果之后,终于自己摸版索出来了。是这样权的,不要用GUI中的data按钮来新建数据集,而要在matlab命令窗口中,输入命令:cftool(a,b),其中a,b就是你要设置的x、y坐标的向量。这样出来散点图,之后再在cftool工具箱的GUI中点fitting按钮,选择曲线拟合

『伍』 用matlab进行曲线拟合!!!多项式拟合

看图像应该是正态分布

可以用工具箱做cftool,选择Gaussian,

number of stems选择4

得出

f(x) =a1*exp(-((x-b1)/c1)^2) + a2*exp(-((x-b2)/c2)^2) +a3*exp(-((x-b3)/c3)^2) + a4*exp(-((x-b4)/c4)^2)

a1 = 4.258e+04 (2.817e+04, 5.7e+04)

b1 = 4.358e+04 (4.218e+04, 4.499e+04)

c1 = 1791 (189.8, 3392)

a2 = 4765 (-2297, 1.183e+04)

b2 = 5.37e+04 (5.104e+04, 5.637e+04)

c2 = 4062 (-3728, 1.185e+04)

a3 = 1.218e+04 (-4.117e+04, 6.553e+04)

b3 = 7.256e+04 (4.343e+04, 1.017e+05)

c3 = 2.602e+04 (-5.024e+04, 1.023e+05)

a4 = 1.25e+19 (-7.416e+23, 7.416e+23)

b4 = -4.532e+06 (-7.788e+09, 7.779e+09)

c4 = 7.715e+05 (-6.608e+08, 6.623e+08)

结果比较接近

『陆』 如何使用matlab拟合工具箱

1.打开CFTOOL工具箱。
在Matlab 6.5以上的环境下,在左下方有一个"Start"按钮,如同Windows的开始菜单,点开它,在目录"Toolboxes"下有一个"Curve Fitting",点开"Curve Fitting Tool",出现数据拟合工具界面,基本上所有的数据拟合和回归分析都可以在这里进行。也可以在命令窗口中直接输入”cftool”,打开工具箱。

2.输入两组向量x,y。
首先在Matlab的命令行输入两个向量,一个向量是你要的x坐标的各个数据,另外一个是你要的y坐标的各个数据。输入以后假定叫x向量与y向量,可以在workspace里面看见这两个向量,要确保这两个向量的元素数一致,如果不一致的话是不能在工具箱里面进行拟合的。 例如在命令行里输入下列数据: x = [196,186, 137, 136, 122, 122, 71, 71, 70, 33]; y = [0.012605; 0.013115; 0.016866; 0.014741; 0.022353; 0.019278; 0.041803; 0.038026; 0.038128; 0.088196];

3.数据的选取。
打开曲线拟合共工具界面,点击最左边的"Data..."按钮,出现一个Data对话框,在Data Sets页面里,在X Data选项中选取x向量,Y Data选项中选取y向量,如果两个向量的元素数相同,那么Create data set按钮就激活了,此时点击它,生成一个数据组,显示在下方Data Sets列表框中。关闭Data对话框。此时Curve Fitting Tool窗口中显示出这一数据组的散点分布图。

4.曲线拟合(幂函数power)。
点击Fitting...按钮,出现Fitting对话框,Fitting对话框分为两部分,上面为Fit Editor,下面为Table of Fits,有时候窗口界面比较小,Fit Editor部分会被收起来,只要把Table of Fits上方的横条往下拉就可以看见Fit Editor。在Fit Editor里面点击New Fit按钮,此时其下方的各个选框被激活,在Data Set选框中选中刚才建立的x-y数据组,然后在Type of fit选框中选取拟合或回归类型,各个类型的拟合或回归相应的分别是: Custom Equations 用户自定义函数 Expotential e指数函数 Fourier 傅立叶函数,含有三角函数 Gaussian 正态分布函数,高斯函数 Interpolant 插值函数,含有线性函数,移动平均等类型的拟合 Polynomial 多项式函数 Power 幂函数 Rational 有理函数(不太清楚,没有怎么用过) Smooth Spline (光滑插值或者光滑拟合,不太清楚) Sum of sin functions正弦函数类
在这个Type of fit选框中选择好合适的类型,并选好合适的函数形式。于是点击Apply按钮,就开始进行拟合或者回归了。此时在Curve Fitting Tool窗口上就会出现一个拟合的曲线。这就是所要的结果。 在上面的例子中,选择sum of sin functions中的第一个函数形式,点击Apply按钮,就可以看见拟合得到的正弦曲线。

『柒』 matlab中如何进行曲线拟合

拟合用polyfit和polyval.
b=polyfit(x,y,2);%进行抄2次拟合,b是多袭项式前面的值。就如2次拟合中y=ax+b,a,b的值。
yy=polyval(b,x);%得到拟合后y的新值
plot(x,yy)%画拟合图

『捌』 用matlab cftool工具箱拟合曲线的时候,怎么获得所要的数据点个数

我觉得我们需要是结果,以及结果的精度,而非结果中数据的个数。

>> x=[1:5];
>> y=2*x
为例:
结果为
Linear model Poly1:
f(x) = p1*x + p2
Coefficients (with 95% confidence bounds):
p1 = 2 (2, 2)
p2 = -4.658e-16 (-3.172e-15, 2.24e-15)

Goodness of fit:
SSE: 1.972e-30
R-square: 1
Adjusted R-square: 1
RMSE: 8.108e-16
若是楼主真得需要,推荐楼主去看操作生成的代码
function [fitresult, gof] = createFit(x, y)
[xData, yData] = prepareCurveData( x, y );

% Set up fittype and options.
ft = fittype( 'poly1' );

% Fit model to data.
[fitresult, gof] = fit( xData, yData, ft );

% Plot fit with data.
figure( 'Name', 'untitled fit 1' );
h = plot( fitresult, xData, yData );
legend( h, 'y vs. x', 'untitled fit 1', 'Location', 'NorthEast' );
% Label axes
xlabel( 'x' );
ylabel( 'y' );
grid on

其实我已经看到了这里几个函数的帮助,没有发现可以设置拟合数据的长度的。
希望对楼主有帮助,谢谢。

『玖』 怎么用matlab编写曲线拟合

在命令行输入图中所示的数据;
如何利用MATLAB曲线拟合工具箱做曲线拟合

在窗口中输入cftool,按enter键进入拟合工具箱;
如何利用MATLAB曲线拟合工具箱做曲线拟合

在Xdata中选择x,Ydata中选择y;
如何利用MATLAB曲线拟合工具箱做曲线拟合

修改fitname名称为拟合曲线1;
如何利用MATLAB曲线拟合工具箱做曲线拟合

在右侧的下拉菜单中选择拟合曲线的类型,再选择相应的degree和robust;
如何利用MATLAB曲线拟合工具箱做曲线拟合

单机fit options,设定参数上下限;
如何利用MATLAB曲线拟合工具箱做曲线拟合

设置完成后自动更新,我们可从窗口中看到相应的拟合曲线,在result中看到拟合结果。
如何利用MATLAB曲线拟合工具箱做曲线拟合

阅读全文

与使用matlab曲线拟合工具箱做曲线拟合相关的资料

热点内容
java俄罗斯方块项目描述 浏览:354
win10系统被冻结 浏览:460
excel文件批量合并 浏览:948
linuxxmind 浏览:93
苹果电脑安全软件 浏览:195
u深度取消赞助密码 浏览:168
编程写东西都写得是什么 浏览:35
蔚来怎么推荐app 浏览:269
6s输入密码来使用siri 浏览:742
程序员黑客头像酷 浏览:739
mvc接受上传文件 浏览:365
程序员可以转金融吗 浏览:193
无需用户名密码的共享 浏览:775
一加怎么和win10传输文件 浏览:425
大数据分析哪些行业 浏览:848
win10删除自动更新文件在哪里 浏览:581
cad打开一个文件要关闭另一文件 浏览:432
钢铁雄心4升级包 浏览:558
一加找不到恢复文件 浏览:960
辽宁高中查分数的app有哪些 浏览:790

友情链接