1

barプロットと同じグループ化動作をに入れることができるかどうか疑問に思っていbar3ます。たとえば、プロットする場合

  bar(rand(3));

ポイントごとに3本のバーがあります。xごとに異なるy値をbarグループ化します。今度は3Dデータでも同じことをしたいと思います。つまり、バーのグループとして視覚化する2Dデータのスライスがいくつかあります。次に、私のデータが

data = rand(3,3,2);

data(1,1,:)バーのグループdata(1,2,:)として、また別のグループとして見たいです。

出来ますか?これを達成する方法が見つかりません。

編集:それをよりよく説明するために、私はより多くの詳細を追加しています。

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複数のデータセットを配置するとグループ化される傾向があります。可能かどうか知りたいのですが。

4

2 に答える 2

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');

たぶん、1つのグループでどのように見えるかについてのコード例を示すことができれば、質問をよりよく理解するのに役立ちます。

于 2011-03-24T13:06:22.650 に答える
0

3Dバープロットでバーをグループ化したいが、小さなグループ(たとえば、各グループに2つまたは3つのバー)に満足している場合は、bar3のY引数を利用できます:BAR3(Y、Z、WIDTH)so 2つのシフトされたYベクトルを持つバーの2つのグループの位置を指定します。

例:bar3(0:3:9、rand(4,4)、0.3)はbar3(1:3:10、rand(4,4)、0.3)を保持します

次に、ラベルを自分に合った方法で編集できます。

于 2013-01-25T23:29:53.843 に答える