colour variation (transparency) on the overlapping bars of 2 bar charts

6 ビュー (過去 30 日間)
Alberto Acri
Alberto Acri 2023 年 8 月 6 日
回答済み: DGM 2023 年 8 月 6 日
Hi! I have two bar charts placed in the same figure:
load C.mat
figure
hbh = barh(C(:,1), C(:,[2 3]),'stacked');
cm = ['b'; 'r'];
for k = 1:numel(hbh)
hbh(k).FaceColor = cm(k,:);
hbh(k).EdgeColor = 'k';
% hbh(k).FaceAlpha = 0.2;
end
legend('Graph 1', 'Graph 2', 'Location','best')
I would like to obtain a result like this (colour variation on the overlapping bars):
I have applied the 'FaceAlpha' command but it only changes the transparency of the bars.

採用された回答

DGM
DGM 2023 年 8 月 6 日
The transparency has no effect because there's nothing behind it. You're stacking the bars end-to-end, not on top of each other.
y1 = 1:10;
y2 = fliplr(y1);
% two bar plots, one atop the other
hbh(1) = barh(y1); hold on
hbh(2) = barh(y2);
cm = ['b'; 'r'];
for k = 1:numel(hbh)
hbh(k).FaceColor = cm(k,:);
hbh(k).EdgeColor = 'k';
hbh(k).FaceAlpha = 0.2;
end
legend('Graph 1', 'Graph 2', 'Location','best')

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeDiscrete Data Plots についてさらに検索

製品


リリース

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by