数据/代码准备
数据及代码下载:
下载专区-《MATLAB统计分析与应用:40个案例分析》程序与数据
绘图函数:
matrixplot(data, 'PARAM1',val1, 'PARAM2',val2, ...)
案例
数据如下:
MATLAB代码如下:
clc
close all
clear
%% 导入数据
pathFigure = '.\Figures\' ;
figureUnits = 'centimeters';
figureWidth = 30;
figureHeight = 25;
data = xlsread('examp9_4_1.xls');
X = data(:,3:7);
y = data(:,2);
[R,P] = corrcoef([y,X]);
%% 绘图说明
VarNames = {'y','x1','x2','x3','x4','x5'};
matrixplot(R,'FigShap','e','FigSize','Auto', ...
'ColorBar','on','XVar', VarNames,'YVar',VarNames,...
'TextColor','k');
c = colorbar;
c.Label.String = 'Correlation coefficient';
c.Label.FontName = 'Times New Roman';
c.Label.FontSize = 14;
set(gca,'FontSize',14,'Fontname', 'Times New Roman');
set(gca,'Layer','top');
str= strcat(pathFigure, "Fig.1", '.tiff');
print(gcf, '-dtiff', '-r600', str);
运行上述命令得出变量间的相关系数矩阵R、线性相关性检验的p值矩阵P以及相关系数矩阵图。成图如下所示:
图形参数修改可根据需要对matrixplot函数进行修改。
【说明】
用椭圆色块直观地表示变量间的线性相关程度的与大小:
- 椭圆越扁,变量间相关系数的绝对值越接近于1;椭圆越圆.变量间相关系数的绝对值越接近于0。
- 若椭圆的长轴方向是从左下到右上,则变量间为正相关,反之为负相关。
- 从检验的p值矩阵可以看出哪些变量间的线性相关性是显著的,若p值≤0.05,则认为变量间的线性相关性是显著的,反之则认为变量间的线性相关性是不显著的。
从上面计算的P矩阵可以看出y与x3,x4,x5的线性相关性是显著的,x3与x4,x5的线性相关性是显著的。
参考
1.书籍-《MATLAB统计分析与应用:40个案例分析》