R corrplot函数中的缩放圆尺寸

问题描述

我已经在这个问题上停留了一段时间。也许有人可以在这里帮助我。

我有三个与相关矩阵相似的矩阵。 mtxQ包含“相关”值。 mtxN包含观察到的一组常见值的数量mtxP包含各自的pvalue(现在,我们假设它们是cor.test pvalue)。

### Exemplary dataset ###
df <- mtcars[,c(1,3:5)]
mtxQ <- round(cor(df)*100,2)
mtxP <- round(cor.mtest(df)$p,5)
colnames(mtxP) <- row.names(mtxP) <- row.names(mtxQ)
mtxN <- data.frame(mpg = c(100,80,15,5),disp = c(80,145,6,4),hp = c(15,20,drat = c(5,4,5,row.names = row.names(mtxQ))
mtxN <- as.matrix(mtxN)

require(corrplot)
require(RColorBrewer)

# for mtxQ 
corrplot(mtxQ,type = "upper",tl.col="black",tl.srt=35,diag = T,addgrid.col = NA,na.label = "nc",col = brewer.pal(n=10,name="RdYlBu"),method = "circle",#order = "hclust",title = "mtxQ with non sign. removed",hclust.method = "average",p.mat = mtxP,sig.level = .001,insig = "blank",is.corr = FALSE,cl.lim = c(-100,100),mar=c(0,3,0)
)

mtxQ corrplot non.sign. removed

但是,我希望在log2(mtxN)值之后按如下所示缩放圆圈的大小:

# for mtxN
mtx <- log2(mtxN)
corrplot(mtx,title = "mtxN with non sign. removed",cl.lim = c(floor(min(mtx)-.5),ceiling(max(mtx))),0)
)

log2(mtxN) corrplot

如您所见,这仍然不是我想要的。如何在其中创建图:

  1. 气泡的颜色与mtxQ中的值相对应
  2. 气泡的大小对应于log2(mtxN)
  3. mtxN的值显示在气泡中
  4. 低于某个p值(mtxP)的结果不会显示在图形中

我不确定是否可以通过corrplot()完成此操作。也许ggcorrplot可能是替代方法。但是我也无法弄清楚。

已经非常感谢:)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)