Azzera filtri
Azzera filtri

How to change color for stacked bar chart

135 visualizzazioni (ultimi 30 giorni)
Hi
I am wondering how I can change the color of the bars in a stacked bar chart. The code below gives me the error message "Expected one output from a curly brace or dot indexing expression, but there were 2 results." I wanted to apply blue \ hatch on the gray column, but so far I am not even able to change the color of the bars. I am able to make all bars in blue hatch \ with white background.
I have added a png to show what I want. I changed the colors in the png after running the script with the mouse, and therefor I do not have the option to export the figure as eps (better quality) with correct colors.
ba = bar(y,'stacked', 'FaceColor','flat');
ba.CData(1,:) = [0.5 0.5 0.5]
ba.CData(2,:) = [0 0 1]
applyhatch_plusC(gcf,'\','b');

Risposta accettata

Star Strider
Star Strider il 20 Apr 2019
Try this:
y = [50 50; 25 75; 30 70];
figure
ba = bar(y,'stacked', 'FaceColor','flat');
ba(1).CData = [0.3 0.3 0.7];
ba(2).CData = [1 1 1]*0.8;
Experiment to get the result you want.
  4 Commenti
Andreas Grøvan Aspaas
Andreas Grøvan Aspaas il 21 Apr 2019
Thanks again! For future people searching for a solution to what I have been trying: I was not able to make 'plot::Hatch' work, so I ended up using 'hatchfill2' which worked great, except for the legend. To make it work with the legend 'legendflex' can be used, but I was not able to achive what I wanted with positioning so I ended up using indesign to fix the legend.
Star Strider
Star Strider il 21 Apr 2019
As always, my pleasure!
Your Comment certainly argues for a function that combines all of those features.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Line Plots in Help Center e File Exchange

Prodotti


Release

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by