How to plot correlation coefficient matrix plot?

443 visualizaciones (últimos 30 días)
Roja Eliza
Roja Eliza el 29 de Jun. de 2022
Editada: Adam Danz el 1 de Jul. de 2022
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.

Respuestas (1)

Adam Danz
Adam Danz el 29 de Jun. de 2022
Editada: Adam Danz el 29 de Jun. de 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 comentarios
Roja Eliza
Roja Eliza el 30 de Jun. de 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 el 30 de Jun. de 2022
Editada: Adam Danz el 1 de Jul. de 2022
Flip the colormap using flipud
h.Colormap = flipud(h.Colormap);
where h is the heatmap object.

Iniciar sesión para comentar.

Categorías

Más información sobre Data Distribution Plots en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by