How to change the color of a stacked bar?

18 vues (au cours des 30 derniers jours)
Wolfgang McCormack
Wolfgang McCormack le 27 Mar 2021
Hi all,
I have a stacked bar that has a legend but I don't like the way colors are represting it. I want the orange color be the first instead of blue, how can I modify it?

Réponse acceptée

DGM
DGM le 27 Mar 2021
Modifié(e) : DGM le 27 Mar 2021
There are probably various ways to solve this. If the colors are adequate and you merely want to change their ordering, consider the example:
clc; clf;
% simple stacked bar chart
A = [3 2 5; 2 1 6; 5 8 2];
subplot(1,2,1);
bar(A, 'stacked');
subplot(1,2,2);
h=bar(A, 'stacked');
newordering=[3 2 1];
CD={h.FaceColor};
for c=1:numel(h)
h(c).FaceColor=CD{newordering(c)};
end
This gives us the result:
In this case, I reversed the color order, but you can specify any order with the variable newordering.
This works in R2019b, but not R2015b. Unless specified otherwise, I'm going to assume you are using a relatively new version.
  1 commentaire
Wolfgang McCormack
Wolfgang McCormack le 27 Mar 2021
@DGM Yes, I am actually using 2020. Thank you!

Connectez-vous pour commenter.

Plus de réponses (0)

Produits


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by