Bar series plot, transparent colors on the bars
Mostrar comentarios más antiguos
I use Matlab v. R2014b and have a problem with setting the bar series plot to have transparent colors. I add 9 different data sets (given by a&b) on one single plot/figure, using a for-loop and the hold on comand. A simplification of the code is given here:
-------------------------------------------------------------
plotStyle = {'b','k','r','g','c','m','y',[1 0.270588 0],[0.180392 0.545098 0.341176]}; %setting colors for the plot
for i=1:9 %starting for-loop
a=[1; 2; 3; 4; 5]; %vector giving moment, x-axis
b=[10; 3; 5; 7; 9]; %vector giving number of occurences, y-axis
z=rand();
a=a.*z;
b=b.*z;
% Both a & b is updated for every round of the loop, here exemplified with use of a random number
figure (1)
bar(a,b,'FaceColor',plotStyle{i},'EdgeColor',plotStyle{i});
legendInfo{i} = ['Overpull' num2str(i)];
hold on
end %ending for-loop
legend(legendInfo) %displaying legend
-----------------------------------------
To get transparent bar I therefore tried to add "FaceAlpha" in the "bar-command", but this is not allowed for barseries as far as I have found out. I have also tried using handles with pathces, but this doesent seem to work with this version of matlab... Does anyone have a solution on how to get transparent colors on the bars?
Respuesta aceptada
Más respuestas (1)
Thomas Koelen
el 6 de Mayo de 2015
0 votos
They explain how to it on this website:
Only works on 2014B, well earlier versions can do it aswell but it is a lot of hassle.
4 comentarios
kathrigr
el 6 de Mayo de 2015
Thomas Koelen
el 6 de Mayo de 2015
Try this:
B = bar(rand(1,40));
ch = get(B,'child');
set(ch,'facea',.05)
Brendan Hamm
el 6 de Mayo de 2015
The children of bar is now empty post 2014b so this will not work.
paul harder
el 19 de Sept. de 2018
Categorías
Más información sobre Discrete Data Plots en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!