首页 > 解决方案 > corrplot 的奇怪行为

问题描述

使用以下 R 代码与包corrplot

library(corrplot)
M <- cor(mtcars)
diag(M) <- 0
dev.new()
corrplot(M, is.corr=F, method = "circle", col=colorRampPalette(c("blue","white","goldenrod"))(256), cl.lim=c(-0.87, 0.91))

L <- M/2
dev.new()
corrplot(L, is.corr=F, method = "circle", col=colorRampPalette(c("blue","white","goldenrod"))(256), cl.lim=c(-0.87, 0.91))

通过使用相同的颜色范围,我有两个具有两个所需属性的图(如下所示):1)圆的大小与相应的值成正比,2)对角线(全为 0)显示为白色。

在此处输入图像描述 在此处输入图像描述

但是,当我尝试以下操作时:

N <- abs(L)
dev.new()
corrplot(N, is.corr=F, method = "circle", col=colorRampPalette(c("blue","white","goldenrod"))(256), cl.lim=c(-0.87, 0.91))

这段代码没有像我想要的那样渲染图(见下文):1)比例不遵循颜色范围,2)对角线不再是白色的。颜色条映射看起来也与其他两个图不同。是因为 N 中的所有值都是正数吗?我怎样才能让它工作?

在此处输入图像描述

标签: rr-corrplot

解决方案


推荐阅读