作业帮 > 综合 > 作业

求助用matlab画3列数据的分布曲线,谢谢

来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/07/09 01:24:09
求助用matlab画3列数据的分布曲线,谢谢
我刚接触matlab,不会画图,现在有3年的数据,每一年都是一列94个数,想画出每一年的分布图曲线(类似于对数正态分布),并且将这3个曲线画在一个坐标系中,请高手解答,十分感谢!
求助用matlab画3列数据的分布曲线,谢谢
不是很清楚你的数据情况,先试试:
clear all;clc;
n1=randn(94,1);
n2=randn(94,1);
n3=randn(94,1);
plot(n1,'r-.');hold on;
plot(n2,'k:');
plot(n3);
axis([1,94,-3.5,3.5]);
legend('2011年','2012年','2013年');
再问: 谢谢你的回答!我试了一下,画出来的图比较混乱,数据上下来回波动。能不能画出整齐美观点的?就像对数正态分布那样,或者左偏,或者右偏,这样能够直观点,并且能将这3年的数据作比较,看出变化情况。多谢了!我刚才把数据粘贴在下边了,可是网站说内容过多,不能粘贴数据。
再答: 就是,没有数据,怎么办?大概就这么画要不你私信给我吧算了,我也不嫌麻烦了,给你模拟些对数正态分布的数据吧:clear all;clc;u=0;sig1=1;sig2=1/4;sig3=1/8;x=linspace(0.05,3,94);n1=(1./(sqrt(2*pi)*sig1*x)).*exp(-(log(x)-u).^2/(2*sig1^2));n2=(1./(sqrt(2*pi)*sig2*x)).*exp(-(log(x)-u).^2/(2*sig2^2));n3=(1./(sqrt(2*pi)*sig3*x)).*exp(-(log(x)-u).^2/(2*sig3^2));plot(n1,'r-.');hold on;plot(n2,'k:');plot(n3);legend('2011年','2012年','2013年');