How to plot correlation coefficient matrix plot?

I want to plot a correlation coefficient matrix plot and I want to show the values at each individual box as shown in the picture. I have my my calculated correlation coeff values.

Antworten (1)

Adam Danz
Adam Danz am 29 Jun. 2022
Bearbeitet: Adam Danz am 29 Jun. 2022
Assuming you already have the correlation matrix, use heatmap. The upper triangle can be filled with NaNs.
S = load('Data_Canada');
r = corr(S.Data)
r = 5×5
1.0000 0.9266 0.7401 0.7287 0.7136 0.9266 1.0000 0.5908 0.5716 0.5556 0.7401 0.5908 1.0000 0.9758 0.9384 0.7287 0.5716 0.9758 1.0000 0.9861 0.7136 0.5556 0.9384 0.9861 1.0000
% Replace upper triangle with NaNs
isupper = logical(triu(ones(size(r)),1));
r(isupper) = NaN
r = 5×5
1.0000 NaN NaN NaN NaN 0.9266 1.0000 NaN NaN NaN 0.7401 0.5908 1.0000 NaN NaN 0.7287 0.5716 0.9758 1.0000 NaN 0.7136 0.5556 0.9384 0.9861 1.0000
% Plot results
h = heatmap(r,'MissingDataColor','w');
labels = ["wt","hp","xy","ad","tt"];
h.XDisplayLabels = labels;
h.YDisplayLabels = labels;

2 Kommentare

Roja Eliza
Roja Eliza am 30 Jun. 2022
Thanks a lot..works fine. just one query I want to reverse the colour from depper shade to lighter which I cannt seem to edit in the property inspector. It only takes pre defined colour schemes
Adam Danz
Adam Danz am 30 Jun. 2022
Bearbeitet: Adam Danz am 1 Jul. 2022
Flip the colormap using flipud
h.Colormap = flipud(h.Colormap);
where h is the heatmap object.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Data Distribution Plots finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 29 Jun. 2022

Bearbeitet:

am 1 Jul. 2022

Community Treasure Hunt

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

Start Hunting!

Translated by