How to draw bar graph of different colors ?
    56 views (last 30 days)
  
       Show older comments
    
I have plotted the bar graph  but the color is same. i want to differentiate the color of each x variable .Thank you in advance !

Accepted Answer
  Star Strider
      
      
 on 26 Feb 2021
        Try this: 
y = [280 260 240];
figure
c = bar(y);
set(gca, 'XTickLabel',{'CS0','CS10','CS20'})
xlabel('Wt% of cenospheres')
ylabel('Workability, mm')
c.FaceColor = 'flat';
c.CData(1,:) = [1 0 0];
c.CData(2,:) = [0 1 0];
c.CData(3,:) = [0 0 1];
producing: 

Experiment with different colours.  
7 Comments
  Roger Breton
 on 18 Jan 2024
				This works for me!
RGB = xyz2rgb(testXYZ'/100);
figure
c = bar(R);
% set(gca, 'XTickLabel',{'CS0','CS10','CS20'})
ylim([0 100])
xlabel('Element')
ylabel('Score')
title('CIE 1995 TCS Score')
c.FaceColor = 'flat';
c.CData(1,:) = RGB(1,:);
c.CData(2,:) = RGB(2,:);
c.CData(3,:) = RGB(3,:);
More Answers (1)
  Adam Danz
    
      
 on 26 Feb 2021
        This has been addressed in the forum many times.  
Examples:
- https://www.mathworks.com/matlabcentral/answers/553894-barcharts-colours-based-on-other-vectors#answer_456622
- https://www.mathworks.com/matlabcentral/answers/571735-custom-colors-for-stacked-bar-chart#answer_471967
- https://www.mathworks.com/matlabcentral/answers/486175-how-can-i-change-colors-and-generate-errorbars-in-a-bar-graph#answer_397071
- https://www.mathworks.com/matlabcentral/answers/506415-bar-chart-legend-and-colour
- https://www.mathworks.com/matlabcentral/answers/599512-changing-transparency-of-individual-bars-in-bar#answer_500116
See Also
Categories
				Find more on Legend in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




