bar3 color

5 ビュー (過去 30 日間)
Emily
Emily 2011 年 4 月 30 日
コメント済み: Shaimaa Doma 2020 年 3 月 11 日
Hello,
I have been using bar3 to plot a matrix. The matrix is 101x 201. When I use bar3, it plots bars of the same color for the short axis, but changes the color for the long axis. For example, my matrix is A(201,101). Matlab plots A(1,:) of the same color, but instead, I want it to plot A(:,1) of the same color. I have tried using bar3(A') but this does not help. Does anyone have sugestions?
Many thanks

回答 (1 件)

Sarah Wait Zaranek
Sarah Wait Zaranek 2011 年 5 月 2 日
I believe this will work for you. Basically I am resetting each set of bars colormap by changing the CData of the patches that make up the bar. I kept the original plot as a reference in this example.
A = rand(101,201);
figure;
hc = bar3(A);
figure;
h = bar3(A);
for ii = 1:length(h)
zdata = get(h(ii),'ZData');
colorEx = repmat((1:length(zdata))',[1 4]);
set(h(ii),'CData',colorEx)
end
  1 件のコメント
Shaimaa Doma
Shaimaa Doma 2020 年 3 月 11 日
If I understand the question correctly, the code works when zData and not colorEx is used as color information:
set(h(ii),'CData',zdata)

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeData Distribution Plots についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by