Different colors for each bar

3 views (last 30 days)
Rachele Franceschini
Rachele Franceschini on 24 Mar 2022
Commented: Cris LaPierre on 24 Mar 2022
Hi, I have this problem. I have this data:
x=file.variable %file text (ABR CAM CAL BAS EML...etc)
y=file.variable %number (12 52 32 36 59....etc
z=file.variable %number (2.3 5.4 8.3 1.3....etc)
I would like a bar plot with different colors for each bar (on base of z value) using for example colorbar. Now I have this code, maybe there is some errors within function:
x = file.variable_text;
y = file.variable_number;
z = file.variable_percentage;
[~,arr] = sort(z,'ascend'); %order data
X = reordercats(categorical(x),x(arr));
How I can do?

Answers (1)

Cris LaPierre
Cris LaPierre on 24 Mar 2022
Perhaps this example from the bar documentation page will help.
b = bar(rand(10,1));
b.FaceColor = 'flat';
b.CData(2,:) = [.5 0 .5];
Cris LaPierre
Cris LaPierre on 24 Mar 2022
My reading of the documentation would indicate this is the recommended approach for setting bar color. There does not appear to be an option to automatically set the color based on value.
See this answer for more.

Sign in to comment.


Find more on Line Plots 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!