在corrplot的x轴下添加其他信息

时间:2018-06-19 17:02:58

标签: r plot pca cumsum r-corrplot

我试图在corrplot的x轴下添加“解释的累积比例方差”(来自PCA)。我参考了corrplot手册,但没有找到任何说明。下面是我目前使用示例数据的代码。

library("FactoMineR")
library("factoextra")
library("corrplot")

data(decathlon2)
decathlon2.active <- decathlon2[1:23, 1:10]

res.pca <- PCA(decathlon2.active, graph = FALSE)
var <- get_pca_var(res.pca)
corrplot(var$cos2, is.corr=FALSE)

##getting cumulative variance explained from res.pca
variance <- res.pca$eig*100/sum(res.pca$eig)
cumvar <- cumsum(variance)

问题在于如何将cumvar信息插入corrplot的x轴,以使其与dim*顶部的相应corrplot匹配,从而无需进行屏幕绘制。

有人知道怎么做吗?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

如果要在x轴底部显示这些数字:

  1. 重复您的计算

    library("FactoMineR")
    library("factoextra")
    library("corrplot")
    
    data(decathlon2)
    decathlon2.active <- decathlon2[1:23, 1:10]
    
    res.pca <- PCA(decathlon2.active, graph = FALSE)
    var <- get_pca_var(res.pca)
    
    variance <- res.pca$eig*100/sum(res.pca$eig)
    cumvar <- cumsum(variance)
    
  2. 在底部进行额外绘制的绘图

    corrplot(var$cos2, is.corr=FALSE, mar=c(4,0,0,0))
    
  3. 在单元格下解释的方差比例增加:

    text(1:5, 0, round(cumvar[1:5], 2), xpd=TRUE)
    

结果:

result