相关图之corrgram

相关图: 所谓相关图是基于变量间的相关系数大小,通过可视化方法反应不同变量组合间相关关系的差异图形。可以把相关图分为相关矩阵图、相关层次图

相关矩阵图

R语言中,绘制相关矩阵图的包主要有两个:corrgram::corrgramcorrplot::corrplot
此处都以mtcars数据集为例,说明这两个函数的使用

相关矩阵图一—–corrgram

corrgram::corrgram()函数

corrgram(x, type = NULL, order = FALSE, labels, panel = panel.shade,
  lower.panel = panel, upper.panel = panel, diag.panel = NULL,
  text.panel = textPanel, label.pos = c(0.5, 0.5), label.srt = 0,
  cex.labels = NULL, font.labels = 1, row1attop = TRUE, dir = "",
  gap = 0, abs = FALSE, col.regions = colorRampPalette(c("red", "salmon",
  "white", "royalblue", "navy")), cor.method = "pearson",
  outer.labels = NULL, ...)


参数解释:  
x: 数据框或者相关矩阵,输入数据框时,会自动识别数值型列进行计算相关矩阵,然后再绘图
order: 是否让变量按主成分分析相关矩阵排列.可以设置为TRUE或"PCA",默认FALSE
panel : 设置非对角线的面板形状,默认为阴影图
lower.panel: 设置相关矩阵下三角矩阵面板形状
upper.panel: 设置相关矩阵上三角矩阵面板形状
  面板形状设置参数: 
    panel.pie   用饼图的填充比例来表示相关性大小
        panel.shade 用阴影的深度来表示相关性
        panel.ellipse   绘制置信椭圆和平滑拟合曲线
        panel.pts   绘制散点图

text.panel 和 diag.panel 选项控制着主对角线元素类型。 
    textPanel    输出变量的名字(默认)
    panel.minmax    输出变量的最大最小值
        panel.txt      输出的变量名字          

画出相关矩阵图

library(corrgram)
corrgram(cor(mtcars)) 

corrgram(mtcars)

corrgram(iris)

设置排序处理

corrgram(mtcars,order = T) # 等价 corrgram(mtcars,order = "PCA")

设置上下三角面板形状

corrgram(mtcars,order = "PCA",lower.panel = panel.shade,upper.panel = panel.pie)

#### 只显示下三角部分图

corrgram(mtcars,order = "PCA",lower.panel = panel.shade,upper.panel = NULL)

调整版面颜色

corrgram(mtcars,order = T,lower.panel = panel.shade,upper.panel = panel.pie,
         col.regions = colorRampPalette(c("darkgoldenrod4", "burlywood1","white","darkkhaki", "darkgreen")))

corrgram(mtcars,order=TRUE,
         lower.panel=panel.ellipse,
         upper.panel=panel.pts,
         text.panel=panel.txt,
         diag.panel=panel.minmax,
         main="Correlogram of Mtcars intercorrelations" )


次;