【问题标题】:R corrplot - color relying on valueR corrplot - 颜色取决于值
【发布时间】:2018-10-03 10:17:40
【问题描述】:

我有一个二进制 data.frame(53115 行;520 列),我想绘制一个相关图。我想根据值对其进行着色,相关值 >=0.95(红色),否则为蓝色。

correl <- abs(round(cor(bin_mat), 2))

pdf("corrplot.pdf", width = 200, height = 200)
a <- corrplot(correl, order = "hclust", addCoef.col = "black", number.cex=0.8, cl.lim = c(0,1), col=c(rep("deepskyblue",19) ,"red"))
dev.off()

我得到了相关图,但在许多情况下我得到了错误的颜色(见下文 0.91)。

数据:file

我怎样才能拥有正确的颜色?

【问题讨论】:

    标签: r plot r-corrplot


    【解决方案1】:

    一般来说,corrplot 库对于cl.lim 和颜色来说是很奇怪的。出于某种原因,是否设置 cl.lim 似乎并不重要 - 颜色仍会从 -1 分布到 1。

    因此,在您的情况下,只需使用 39 种蓝色而不是 19 种(以涵盖从 -1 到 1 的范围):

    cors <- cor(iris[,-5])
    cors[cbind(c(1,2), c(2,1))] <- 0.912
    corrplot(cors, col=c(rep("blue", 39), "red"), cl.lim=c(-1,1), addCoef.col="black")
    

    结果:

    【讨论】:

      猜你喜欢
      • 2017-03-20
      • 2021-06-25
      • 2021-05-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多