如何在R的corrplot相关性热图特定列间添加白色间隔?
在corrplot热图特定列间添加白色分隔的方法
corrplot包本身没有直接添加列间隔的参数,但可以通过给相关矩阵插入全NA的行列来实现白色分隔效果,具体操作如下:
首先构造带NA分隔的相关矩阵:
library(corrplot) # 计算原始相关矩阵 M <- cor(mtcars) # 在第2列和第3列之间插入全NA的列(对应列索引3的位置) M <- cbind(M[,1:2], NA, M[,3:ncol(M)]) # 因为相关矩阵是对称的,需要在对应行位置也插入全NA的行 M <- rbind(M[1:2,], NA, M[3:nrow(M),]) # 重命名行列,避免NA列的名字混乱(可选操作) colnames(M)[3] <- "" rownames(M)[3] <- ""
然后绘制热图,设置NA区域显示为白色:
corrplot(M, method = 'number', col.na = "white", na.label = " ")
这样就能在第2列和第3列之间看到明显的白色分隔了,原理是利用corrplot对NA值的渲染特性,把NA区域设为白色,模拟成分隔效果。
内容的提问来源于stack exchange,提问作者user21627763
相关产品推荐
相关产品推荐

