Custom colors for group of bars in bar plot

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.

Antworten (1)

Ovidiu
Ovidiu am 30 Sep. 2015
Bearbeitet: Ovidiu am 30 Sep. 2015

1 Stimme

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.

Kategorien

Mehr zu Data Distribution Plots finden Sie in Hilfe-Center und File Exchange

Bearbeitet:

am 30 Sep. 2015

Community Treasure Hunt

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

Start Hunting!

Translated by