Clear Filters
Clear Filters

how to change the colours of a bar chart

1 view (last 30 days)
The MATLAB script below produces the following bar chart. How do I change the colour of one dataset to white and one to grey.
I have tried this but it does not seem to work
set(ctr,'FaceColour','grey')
set(ydt,'FaceColour','white')
MATLAB Script
x=categorical({'Q3','Q6','Q10','Q15','Q30','Q50'});
z=[2.891586318,1.99422657,1.907652812,4.71298388,6.007681496,6.718181667;3.229392123,3.36482536,4.089746011,5.204662107,6.761377397,7.978099976];
y=transpose(z);
a=[0.167797,0.314574,0.081018,0,0.116596,0;0,0.173132,0,0.231752,1.15677,1.204734];
errorplus=a;
errorminus=errorplus;
figure;
bar(x,y);
hBar = bar(y, 0.8);
for k1 = 1:size(y,2)
ctr(k1,:) = bsxfun(@plus, hBar(k1).XData, hBar(k1).XOffset');
ydt(k1,:) = hBar(k1).YData;
end
hold on
errorbar(ctr, ydt, errorplus, '.k')
hold off
ylabel('Signal Intensity','FontSize',18)
set(gca,'linewidth',2,'FontSize',14)
ylim([0 10]);
set(gca,'XTickLabel',cellstr(x))

Accepted Answer

Mehmed Saad
Mehmed Saad on 4 May 2020
Edited: Mehmed Saad on 4 May 2020
hBar(1).FaceColor = 'flat';hBar(2).FaceColor = 'flat';
hBar(1).CData =rand(size(hBar(1).CData,1),3);
hBar(2).CData =rand(size(hBar(2).CData,1),3);
please read the bar help before asking questions on forum.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!