No 'CData' property on bar graph

I'm trying to make a bar graph and adjust the colors of individual bars. The most helpful online answers on how to do this involve using the 'CData' property of the bar object. However, in my particular bar graph, generated by the following code, there is no 'CData' property, and I'm confused as to why. Any help would be greatly appreciated!
eyesPlot = bar(1:4,eyesArray(:,2));

2 Kommentare

Steven Lord
Steven Lord am 12 Okt. 2017
Which release are you using?
Jack Olmstead
Jack Olmstead am 12 Okt. 2017
R2017a

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Tom Holmes
Tom Holmes am 9 Nov. 2017

0 Stimmen

This worked for me with 2017a release:
figure
BarMatrix = [your_matrix_here];
b = bar(BarMatrix,1,'LineStyle','none');
CData = lines(4);
for k = 1:size(BarMatrix,2)
b(k).FaceColor = CData(k,:);
end
Roger Breton
Roger Breton am 18 Jan. 2024

0 Stimmen

Does not work for me?
I use:
data = [1 2 3 4];
figure
BarMatrix = [1 2 3 4];
b = bar(BarMatrix,1,'LineStyle','none');
CData = lines(4);
for k = 1:size(BarMatrix,2)
b(k).FaceColor = CData(k,:);
end
And all I get are four solid bars of blue?

Gefragt:

am 12 Okt. 2017

Beantwortet:

am 18 Jan. 2024

Community Treasure Hunt

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

Start Hunting!

Translated by