私はこの質問のように3D積み上げ棒グラフを作成しようとしています:3D stacked bars in Matlab。しかし、その質問とは違って、私は2の代わりに3つのデータセットを使用したいと思います。私はバーが正しく動かないか、または類似している(おそらく単純な)問題があると思います。私はTEST1、TEST2およびTEST3と呼ばれ、それぞれされているMatlab:3D積み上げ棒グラフ
3つのデータセット:あなたは中央のバーは、最大追加する必要があります見ることができるように
:
5 10 7
1 100 0
1 3 2
10 15 10
10 80 10
5 5 15
10 10 10
20 200 20
30 10 30
、それらをプロットするが、これを生産します380ですが、身長はわずか280です。データセットのうちの1つのバーは、他の2つのデータセットの「内側」に表示されているように見えます。
私が使用しているコードは次のとおりです。
core=bar3(test1);
set(core,'FaceColor',[1 0 0]); %red
for i=1:length(core)
zz=get(core(i),'Zdata');
k=1;
for j= 0:6:(6*length(core)-6)
zz(j+1:j+6,:)=zz(j+1:j+6,:)+test2(k,i);
k=k+1;
end
set(core(i),'Zdata',zz);
end
hold on
core=bar3(test2);
set(core,'FaceColor',[0 1 1]);%cyan
hold off
for i=1:length(core)
zz=get(core(i),'Zdata');
k=1;
for j= 0:6:(6*length(core)-6)
zz(j+1:j+6,:)=zz(j+1:j+6,:)+test3(k,i);
k=k+1;
end
set(core(i),'Zdata',zz);
end
hold on
core=bar3(test3);
set(core,'FaceColor',[1 1 0]);%yellow
hold off
は、どのように私はバーが適切にシフトアップするのですか?あるいは、Matlabコードを使用してデータの3D積み上げ棒グラフを作成するにはどうすればよいですか?あなたのお時間をいただきありがとうございました。最初のループで
ありがとうございます。 –
あなたは大歓迎です! –