MATLAB Answers

assign particular colour to 2nd bar of the bar plot

2 views (last 30 days)
RAJAT GANGADHARAN
RAJAT GANGADHARAN on 4 Feb 2020
Commented: Subhadeep Koley on 4 Feb 2020
I have a matrix of 4 elements. I plotted a bar graph. how can I assign red colour for the 2nd bar and blue for remaining 3 bars?

  0 Comments

Sign in to comment.

Answers (1)

Subhadeep Koley
Subhadeep Koley on 4 Feb 2020
Hi, use the code below.
clc; close all;
% Define your 4-element matrix
y = [25 75 100 125];
% Plot bar graph
b = bar(y);
% Assign red colour to the second bar
b.FaceColor = 'flat';
b.CData(2,:) = [1 0 0];
customBarColor.png
Hope this helps!

  2 Comments

RAJAT GANGADHARAN
RAJAT GANGADHARAN on 4 Feb 2020
it was showing an error as follows:
"No appropriate method, property, or field 'CData' for class
'matlab.graphics.chart.primitive.Bar'.
Did you mean:
>> b.XData (2, :) = [1 0 0];"
Subhadeep Koley
Subhadeep Koley on 4 Feb 2020
No I meant b.CData(2,:) = [1 0 0]; only.
Which matlab version are you using?
Also, can you show the matrix which you are trying to plot? (I mean you entire code)
It seems the built-in bar() function is being shadowed by a custom function with same name as "bar".

Sign in to comment.


Translated by