how to plot a correlation matrix between two variables as a heatmap in matlab?

I have two variables which vary with each run of my code. I have to calculate the correlation matrix between these two variables. The matrix axes will be like variable X(first run),variable Y(first run),Variable X(second run),variable Y (second run)......I need to plot this correlation matrix as a heat map?
please help me

 Accepted Answer

Just perform Pearson or Spearman correlation depending on your data. Then display the resulting matrix as an image and apply any colormap of your choice.
%% Code Snippet
corr(yourvariables)
imagesc(ans); % Display correlation matrix as an image
set(gca, 'XTick', 1:sizeofyourcorrmatrix); % center x-axis ticks on bins
set(gca, 'YTick', 1:nsizeofyourcorrmatrix); % center y-axis ticks on bins
set(gca, 'XTickLabel', yourlabelnames); % set x-axis labels
set(gca, 'YTickLabel', yourlabelnames); % set y-axis labels
title('Your Title', 'FontSize', 10); % set title
colormap('jet'); % Choose jet or any other color scheme
colorbar on; %

3 Comments

Thank you Riz for sharing this code it helps me but i have an problem to giving lables name.
Please help me if you have any information about this
Thank you
Nilima, write xlabel('Example 1') and ylabel('Example 2') to put names in the x and y axis. See more at https://www.mathworks.com/help/matlab/ref/xlabel.html.

Sign in to comment.

More Answers (1)

I have four variables- 3 of them are caluating the fourth one, thus mismatch of the lengths/dimension. . How do I use imagesc and corr for that?

Categories

Products

Release

R2018b

Community Treasure Hunt

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

Start Hunting!