Change color on a single bar
95 views (last 30 days)
Dear MatLab comunity,
I have a problem in changing color on a single or multiple bars in a normal and easy bar graph.
I tried the following:
%% Load Data
RMSD_UDP = load('rmsf_UDP.dat');
% Assign variables
n = RMSD_UDP(:,1); %number of residue
x_UDP = RMSD_UDP(:,2); %RMSF for given residue
w1 = 0.5;
b = bar(n,x_UDP,w1)
b.FaceColor = 'g';
b.CData(2,:) = [.5 0 .5];
b.CData(44,:) = ['k'];
It doesn't work but I don't know if it's the MatLab version (R2017a). I tried it on one of the latest ones and it didn't work either. there must be some detail i am not seeing.
Have a nice day,
Adam Danz on 9 Mar 2021
Edited: Adam Danz on 9 Mar 2021
You have to set FaceColor to 'flat'.
Update: These methods rely on using the CData property which became available in Matlab r2017b.