Different colors for each bar

3 次查看(过去 30 天)
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?

回答(1 个)

Cris LaPierre
Cris LaPierre 2022-3-24
Perhaps this example from the bar documentation page will help.
b = bar(rand(10,1));
b.FaceColor = 'flat';
b.CData(2,:) = [.5 0 .5];
  2 个评论
Rachele Franceschini
But I should change color for each bar (I have 20 bar). But, a way exists to get gradual color changing on base of data (in my case z)?
Cris LaPierre
Cris LaPierre 2022-3-24
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.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Annotations 的更多信息

产品


版本

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by