Scilab 中带有误差条的条形图

凯瑟琳娜·弗萨茨

我试图找到一种在条形图上包含误差线的方法。可悲的是,我只能找到正常二维图的误差线。我试图用一种非常草率的方式来解决它:

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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章