分组BAR3情节一样吧(Grouping bar3 plots like bar)

2019-09-28 02:58发布

我不知道是否有可能得到相同的分组行为bar曲线进入bar3 。 例如,如果您绘制

  bar(rand(3));

你每点3条; bar组用于每个x不同的y值。 现在我想以做同样的三维数据。 那是,我有2D数据的几片,我想作为可视化的酒吧群。 然后,如果我的数据是

data = rand(3,3,2);

我想看到data(1,1,:)作为一组的酒吧,和data(1,2,:)为另一组等。

可能吗? 我无法找到实现这一目标的一种方式。

编辑:我添加更多的细节,解释它更好。

让我们说,我们有两个或更多的数据集{x_(i,j)^s} 我需要的是一群在同一个网格位置(i,j)所有的组s 。 在这个问题 ,他们是通过分组侧,而不是逐元素,这样的数据组方:

x1(s1) x1(s2) x1(s3)   x2(s1) x2(s2) x2(s3)   x3(s1) x3(s2) x3(s3)
x4(s1) x4(s2) x4(s3)   x5(s1) x5(s2) x5(s3)   x6(s1) x6(s2) x6(s3)
x7(s1) x7(s2) x7(s3)   x8(s1) x8(s2) x8(s3)   x9(s1) x9(s2) x9(s3)

我想bar命令的行为,它把多个数据集时往往组。 我想知道这是否是可能的。

Answer 1:

我不知道我完全理解,但如果你正在寻找的分组行为就像你提到bar(rand(3))那么你可以尝试

figure; bar3(rand(5),'grouped');
% or maybe
figure; bar3(rand(5),'stacked');

或尝试重新排列数据的数据,因此它可以与重塑BAR3更好地工作:

data = rand(3,3,2);
% now each data(i, j, :) will be in single row 
changeddata = reshape(data , [size(data , 1)*size(data , 2) 2]);
figure; bar3(changeddata);
figure; bar3(changeddata ,'grouped');
figure; bar3(changeddata ,'stacked');

也许你可以给它应该如何在一个小组,研究的代码示例,这将有助于了解你的问题更好。



Answer 2:

如果你想在3D棒图组吧,但你是幸福的o小团体(比如说2个或3个酒吧每组),那么你可以简单地采取BAR3 y参数的优势:BAR3(Y,Z,WIDTH)等等您指定的两个组的两个转移Ÿ载体条的位置。

例如:BAR3(0:3:9,兰特(4,4),0.3)保持在BAR3(1:3:10,兰特(4,4),0.3)

那么你可以编辑标签它适合你的方式。



文章来源: Grouping bar3 plots like bar