Custom colors for group of bars in bar plot

2 views (last 30 days)
I want to have custom colors for a group of bars in Matlab bar plot.
Like the one showed in the picture, but with different colors. I tried to use the following code but it shows stacked bars instead of the groups.
xdata = [1 2 3];
ydata = [10 20 30; 40 50 60; 5 6 7];
clr = [0 0.8 0;
0.3 0.8 0.8;
0 0 1];
for i = 1:length(xdata)
p = bar(xdata, ydata(i,:));
hold on
set(p,'FaceColor', clr(i,:));
end
Any help is appreciated. Thanks.

Answers (1)

Ovidiu
Ovidiu on 30 Sep 2015
Edited: Ovidiu on 30 Sep 2015
Here is one solution:
xdata = [1 2 3];
ydata = [10 20 30; 40 50 60; 5 6 7];
clr = [0 0.8 0;
0.3 0.8 0.8;
0 0 1];
colormap(clr);
bar(xdata, ydata);
Notice that if you have a figure with multiple subplots, colormap changes the color scheme for all subplots.

Categories

Find more on Colormaps in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!