2015-04-01 149 views
2

我有X(时间),Y1(中位值),Y2(第25百分位)和Y3(第75百分位)数据。现在,我想将所有这些绘制在同一个阴谋,阴影中间曲线和上四分位曲线之间的区域,并再次阴影中间曲线和下四分位曲线之间的区域。 有没有一些简单的方法来做到这一点?我试过 xx = [X,X]; yy = [Y1,Y2]; fill(xx,yy,'b');在两条曲线之间绘图

..但是我对上面的代码不满意,因为它没有给我我想要的情节。 请有人可以帮助我。 非常感谢 SSR

+0

的FEX始终是一个良好的开端搜索[像这样的东西(http://www.mathworks.com/matlabcentral/fileexchange/?term=tag%3A%22confidence +间隔%22)。 – knedlsepp 2015-04-01 10:44:58

回答

2

这是你想要的吗?

x = 0:.01:1; 
y1 = 5+sin(2*pi*x); 
y2 = y1-1; 
y3 = y1+1; %// example values 
fill([x x(end:-1:1)],[y3 y1(end:-1:1)],[.6 .6 .6]) %// light grey 
hold on 
fill([x x(end:-1:1)],[y2 y1(end:-1:1)],[.4 .4 .4]) %// dark grey 

enter image description here

+0

是的,这是我正在寻找的那种情节,但不幸的是,当我使用与上面相同的代码来绘制我的数据时,我没有得到预期的结果。我得到的是中间曲线下的面积完全阴影,上四分之一曲线下的面积为阴影。我只需要在两条曲线之间进行阴影处理。 – user3876557 2015-04-01 11:02:20

+1

发表一个小例子来重现您的问题如果没有它很难知道什么是错误的 – 2015-04-01 11:24:01