数据如下
x= 1.096
2.193
3.289
4.385
5.481
6.577
7.673
8.769
9.865
10.961
12.057
13.153
14.249
15.345
16.441
17.537
18.633
19.729
20.825
21.921
23.017
24.113
25.209
26.305
27.401
28.497
29.593
30.689
31.785
32.881
33.977
35.073
36.169
37.265
38.361
39.457
y=
2.15
2.27
2.49
2.73
3.02
3.3
3.57
3.88
4.22
4.57
4.88
5.2
5.48
5.75
5.97
6.17
6.27
6.32
6.27
6.17
6
5.77
5.5
5.23
4.9
4.58
4.27
3.95
3.62
3.32
2.98
2.7
2.48
2.3
2.17
2.13
ä½ å¥½ï¼ä»¥ä¸æ¯æå代ç åæåç»æï¼
clc;clear all大ç¥è¯·æ¶ä¸æçèç
用MATLAB拟合一组数据,得到函数的表达式我的数据是
x=(9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39)
y=(9,12,18,21,12,26,29,36,50,101,192,245,233,117,28,9)
至于具体怎么得到x与y的函数关系,在MATLAB上的具体操作,可能性太多,这组数据可以拟合出无数多种函数结果。
如果什么函数形式都不给出的话,下面以11次多项式举例来拟合你的数据:
1.用多项式拟合
x=(9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39)
y=(9,12,18,21,12,26,29,36,50,101,192,245,233,117,28,9)
p=polyfit(x,y,11)
xx=linspace(9,39,100)
yy=polyval(p,xx)
plot(x,y,'o');hold on
plot(xx,yy,'r');hold off
legend('数据','拟合','location','northwest');
title(poly2str(p,'x'));
2.如果是正态分布
x=(9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39)
y=(9,12,18,21,12,26,29,36,50,101,192,245,233,117,28,9)
fun=@(p,x) p(1)*exp(-(x-p(2)).^2./2/p(3)^2);
p=nlinfit(x,y,fun,[250 32 10]);
xx=linspace(9,39,100);
yy=fun(p,xx);
plot(x,y,'o');hold on
plot(xx,yy,'r');hold off
legend('数据','拟合','location','northwest');
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
本回答被网友采纳多项式拟合
追答那你看楼下的吧,基本就是他那个代码。主要命令就是 ployfit 和 polyval。如果你要更深入了解这两个命令,使用下面的命令看用法即可。
doc polyfit;用matlab拟合一组数据,要求得出函数表达式
y=b1+b2*x+b3*x^2+b4*x^3+b5*x^4;所以上述函数可以用matlab的regress()多元线性回归分析函数来拟合。实现过程如下:A=[1.75,0.26;2.25,0.32;2.5,0.44;2.875,0.57;2.686,0.50;2.563,0.46];x=A(:,1),y=A(:,2)X=[ones(length(y),1),x,x.^2,x.^3,x.^4]...
用matlab拟合一组数据,要求得出函数表达式
你好!以下是拟合代码和拟合结果:clc;clear allx=[1.096 2.193 3.289 4.385 5.481 6.577 7.673 8.769... 9.865 10.961 12.057 13.153 14.249 15.345 16.441... 17.537 18.633 19.729 20.825 21.921 23.017 24.113... 25.209 26.305 27.401 28.497 29.59...
在matlab中如何根据拟合图得到函数?
在matlab中根据拟合图得到函数步骤如下:1、常用的模型有多项式模型、幂函数模型、指数函数模型等。2、设出函数,用命令“plot”绘出图像作为对比。3、准备好散点数据,用命令“plot”绘出散点作为对比。4、调用函数“fit”,参数包括散点数据和曲线拟合模型。5、按回车键即可完成曲线拟合,p1、p2、p3...
...求拟合的公式,就是我知道一组数据,用matlab拟合曲线后,怎么知道这 ...
使用polyfit函数就可以拟合曲线了 比如给出的坐标分别是x和y,则有 P=polyfit(x,y,3)这样得到的P就是多项式的系数。这里的3指的是三次多项式!祝你学习愉快!
matlab样条拟合插值后获得曲线方程
0.1411 就可以知道多项式的表达式了,比如第二行表示函数:0.1177*(x-2)^3-0.4180*(x-2)^2 -0.4679*(x-2)+0.9093(这个2就是断点)这个分段函数的定义域为2~3,如果你要算2.5的插值,只要把他代入这个函数,就得到了这个多项式即可,当然用matlab只要输入命令ppval(p,2.5)就可以了 ...
在matlab中,已知一组组(x,y)如何在一个坐标区内拟合这些曲线,求出曲线...
for i=1:length(x)S=S+(x(1)+x(2)*exp(t)-y(i));%x(1)+x(2)*exp(t)是要拟合的表达式,这里仅是例子;x(1),x(2),是系数 end 存盘;x=[];%赋予系数初始值;x=Isqnonlin('f',x);%得到系数 S=f(x);%得到最终误差。这仅是非线性拟合,不同的拟合会有不同的调用函数。
matlab拟合曲线,求曲线函数方程
拟合曲线方程为 拟合曲线图形为
matlab中拟合函数的表达式怎么输出?
在拟合工具箱里面选择需要拟合的目标函数形式,输出就是那个目标函数的待定参数。例如,如果选择你和3次多项式:ax^3+bx^2+cx+d,则输出a,b,c,d这4个参数。
如何用matlab根据固定的自定义公式拟合一组数据?
fun=@(p,x)log(1+p(1)*p(2)*x)\/p(2);这里p(1)对应于a,p(2)对应于b 第三步,使用nlinfit%非线性回归函数,求解【a,b】系数,即 [p,R] = nlinfit(x,y,fun,[10,5]) 这里R是极差(拟合值与y值的差值)第四步,【a,b】系数,即 a=p(1),b=p(2)第五步,验证拟合值与y...
怎样用matlab产生一组实验数据,并求这组数据的3阶拟合多项式?
三、代码:clear all;clc;close all;x=[1.75,2.25,2.5,2.875,2.686,2.563];y=[0.26,0.32,0.44,0.57,0.50,0.46];plot(x,y,'r*')[p,s]=polyfit(x,y,5) %参数改为1就是线性拟合y1=polyval(p,x)hold on;plot(x,y1,'b.')五次多项式拟合生成的函数值与原数据基本...