![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/564501/image.png)
How to change the color of a stacked bar?
6 次查看(过去 30 天)
显示 更早的评论
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?
0 个评论
采纳的回答
DGM
2021-3-27
编辑:DGM
2021-3-27
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:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/564501/image.png)
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.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Legend 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!