how to change the colours of a bar chart
2 次查看(过去 30 天)
显示 更早的评论
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))
0 个评论
采纳的回答
Mehmed Saad
2020-5-4
编辑:Mehmed Saad
2020-5-4
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);
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Bar Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!