我试图找到一种在条形图上包含误差线的方法。可悲的是,我只能找到正常二维图的误差线。我试图用一种非常草率的方式来解决它:
close();
x=[2, 4, 8];
y=[0.2 0.12 0.06; 0.17 0.22 0.05; 0.19 0.20 0.07];
dev=[0.08 0.08 0.03; 0.03 0.05 0.02; 0.04 0.06 0.02];
bar(x, (y+dev), 'w--')
bar(x, y)
但这并没有向我展示下边界(而且看起来不太好)
您仍然可以errbar()
在条形图上使用。如果你看看它是如何bar()
工作的,它会分别绘制每一列,y
然后将它们在水平轴上向右或向左移动。
对于这个工作,你需要检索每个组有多少转移和值添加到x
输入errbar()
。要获得这样的结果,您可以使用以下代码(在提问者注释后更新):
x=[2, 4, 8];
y=[0.2 0.12 0.06; 0.17 0.22 0.05; 0.19 0.20 0.07];
dev=[0.08 0.08 0.03; 0.03 0.05 0.02; 0.04 0.06 0.02];
bar(x,y)
//get the entity handler
e=gce();
//loop over the entity to retrive x_shift values
for i = 1:length(y,'c')
x_shift(i,:) = e.children(i).x_shift;
end
//flip x_shift vertically
x_shift = x_shift($:-1:1,:);
//plot the error bars
for i = 1:length(y,'c')
errbar(x + x_shift(i), y(:,i)', dev(:,i)', dev(:,i)');
end
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句