matlab作曲线

发布网友

我来回答

4个回答

热心网友

不必用什么特殊的命令.
matlab里面就有curve fitting toolbox,你只须做的就是把数据输入matlab就是了.

点击左下角的start,然后toolboxes,再curve fitting ,curve fitting tool确定,便弹出了曲线拟合工具箱,在工作空间建立了数据之后,点击data按钮.导入数据,按create data set 确定,再点击fitting ,new fit,拟合函数的选项很多,可以选多项式的,这时,你可以选一次的,二次的,甚至自定义,也有指数函数,高斯,样条等等,随便更改!
最后别望了点 apply.

借用楼上的数据,我用二次多项式拟合的操作过程的图片在我的相册里放着,想参考的话,可点下面的连接:
http://hi.baidu.com/%B0%D7%C0%CB/album/item/afa20d337de87ef61b4cff1a.html

热心网友

没有数据,给你个例子。

x=[1.84 1.92 2.0 2.08 2.16 2.24 2.32 2.4 2.48 2.56 2. 2.72 2.8 2.88 2.96 3.04 3.12 3.2 3.28 3.36 3.44 3.52 3.6 3.68 3.76 3.84 3.92 4.0 4.08 4.16 4.24 4.32 4.4 4.48 4.56 4. 4.72 4.8 4.88 4.96];
y=[61.7 62.5 63.0 63.6 .5 65.0 65.4 66.4 67.1 68.0 68.7 69.4 70.2 71.1 71.9 72.8 73.6 74.5 75.3 76.4 77.2 78.1 79.2 80.3 81.2 82.2 83.3 84.4 85.4 86.5 87.8 .1 90.1 91.3 92.5 93.8 95.1 96.4 97.8 98.7];
Y=inline('a(1)*exp(a(2)*X)+a(3)','a','X')
abc=nlinfit(x,y,Y,[1 1 1])
xx=1.8:0.1:5;
yy=abc(1)*exp(abc(2)*xx)+abc(3);
plot(x,y,'o',xx,yy)

结果:
Y = Inline function:
Y(a,X) = a(1)*exp(a(2)*X)+a(3)

abc =

20.2868 0.2480 29.99

图形见:http://hi.baidu.com/chemical%5Fengineering/album/item/52e77bf4446bf2d7f3d385dc.html

热心网友

x=[1.1052,1.2214,1.3499,1.4918,1.87,1.8221,2.0138,2.2255,2.4596,2.7183,3.6693];
y=[0.6795,0.6006,0.5309,0.4693,0.4148,0.3666,0.3241,0.28,0.2532,0.2238,0.1546];
plot(x,y,'*');
p=polyfit(x,y,3); %用三次多项式拟合
y1=polyval(p,x); %计算出这个多项式在x点的值
hold on %保留上面的实验点图
plot(x,y1)

热心网友

这几年级的题啊!!!!!!!!!!

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com