R语言——相关系数矩阵可视化(大全)

相关系数分析在很多领域都有涉及,而可视化则是对其结果最好的体现。不过我的能力有限,目前的水平也仅整合了3个包。欢迎大家指导评价。

1、 corrplot包

获取数据及相关性分析。

coo <- read.csv("相关系数5.csv",header = T)
head(coo)
res <- cor(coo)
res

R包实现。

library(corrplot)
corrplot(res)
corrplot(res,method="shade",shade.col=NA,tl.col="black",tl.srt=45) #阴影图
corrplot(res,method="circle",shade.col=NA,tl.col="black",tl.srt=45) #圆  默认也是圆
corrplot(res,method="pie",shade.col=NA,tl.col="black",tl.srt=45)  #饼图
corrplot(res,method="square",shade.col=NA,tl.col="black",tl.srt=45) #方形
corrplot(res,method="ellipse",shade.col=NA,tl.col="black",tl.srt=45) #椭圆
corrplot(res, method="number",shade.col=NA,tl.col="black",tl.srt=45)#数字
corrplot(res,method="color",shade.col=NA,tl.col="black",tl.srt=45) #颜色
corrplot(res, type = "upper", order = "hclust", tl.col = "black", tl.srt = 45)  #上三角
corrplot.mixed(res) #图形和数值混合矩阵
corrplot.mixed(res, lower.col = "black", number.cex = .7)#文字看不清,可以设置文字为黑色和大小
corrplot(res, order = "hclust", addrect = 2)  #按hclust聚类方式排序,addrect是添加分组矩形,可自定义分组类,类似于平时热图的kmean分组方式。用于表现研究对象可分类的特点,方便继续分类讨论或研究
col3 <- colorRampPalette(c("red", "white", "blue")) 
corrplot(res, order = "AOE", cl.pos = "n", tl.pos = "n") #关闭图例和标签
corrplot(abs(res),order = "AOE", cl.lim = c(0, 1)) #修改图例范围
res1 <- cor.mtest(res, conf.level = .95)
corrplot(res, p.mat = res1$p, sig.level = .01)  #设置没通过统计的相关性结果打X

## leave blank on no significant coefficient
corrplot(res, p.mat = res1$p, insig = "blank")
## add p-values on no significant coefficient
corrplot(res, p.mat = res1$p, insig = "p-value")
## add all p-values
corrplot(res, p.mat = res1$p, insig = "p-value", sig.level = -1)
## star level
corrplot(res, p.mat = res1$p, insig = "label_sig",
         sig.level = c(.001, .01, .05), pch.cex = .9, pch.col = "white")  
         #还可设置不显著的空白,或显示p值;更可以利用此方法显示所有p值,或用*数量代表显示性

2、ggcorrplot

library(ggcorrplot)
ggcorrplot(res)    #method默认为正方形
ggcorrplot(res, method = "circle")   #方法为圆 
p.mat <- cor_pmat(coo)
head(p.mat[, 1:4])
ggcorrplot(res, hc.order = TRUE, outline.color = "white")    #重排矩阵,使用分等级聚类
ggcorrplot(res, hc.order = TRUE, type = "lower", outline.color = "white")  #控制矩阵形状    #下三角形
ggcorrplot(res, hc.order = TRUE, type = "upper", outline.color = "white")   #上三角形
ggcorrplot(res, hc.order = TRUE, type = "lower", outline.color = "white",
           ggtheme = ggplot2::theme_gray, colors = c("#6D9EC1", "white", "#E46726"))  #更改颜色以及主题
ggcorrplot(res, hc.order = TRUE,type = "lower", lab = TRUE)   #添加相关系数
ggcorrplot(res, hc.order = TRUE, type = "lower", p.mat = p.mat) #增加显著性水平,不显著的话就不添加了
ggcorrplot(res, p.mat = p.mat, hc.order=TRUE, type = "lower", insig = "blank",main="re")   #将不显著的色块设置成空白

3、PerformanceAnalytics包

library(PerformanceAnalytics)#加载包
chart.Correlation(res, histogram=TRUE, pch=19)   #scatter plots
col<- colorRampPalette(c("blue", "white", "red"))(20)#调用颜色版自定义颜色
heatmap(x = res, col = col, symm = TRUE)#symm表示是否对称   heatmap
  • 4
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值