[英]How to change color scheme in corrplot
我在R中使用corrplot
来显示相关系数矩阵,如下所示。
library(corrplot)
library(datasets)
corrplot(abs(cor(mtcars)), method="color", tl.pos="n", cl.lim = c(0,1))
默认颜色方案是基于蓝色的。 但是,我想把它改成红色的。 我知道我需要使用colorRampPalette
来指定我想要的颜色。 但是,我无法弄清楚要使用的颜色代码。 有人可以帮帮我吗?
谢谢!
如果你想使用红色,你可以像你提到的那样定义你自己的colorRampPalette。 请注意,该图似乎将颜色范围设置为-1到1(即使您调整cl.lim
值)。 因此,您仍需要在渐变中定义-1到0范围的颜色。 例如
corrplot(abs(cor(mtcars)), method="color", tl.pos="n",
cl.lim=c(0,1), col=colorRampPalette(c("blue","white","red"))(200))
会产生
即使我们在调色板中定义了“蓝色”,它也不会显示,因为我们将颜色条限制为大于1的值。
如果您取出cl.lim
,也可以看到原始版本的颜色渐变驾驶室的“未使用”部分
corrplot(abs(cor(mtcars)), method="color", tl.pos="n")
函数colorRampPalette返回一个带有数字参数的函数:
corrplot(abs(cor(mtcars)), method="color",
col= colorRampPalette(c("white","pink", "red"))(10) ,
tl.pos="n", cl.lim = c(0,1))
默认值使用此色谱定义:
col2 <- colorRampPalette(c("#67001F", "#B2182B", "#D6604D", "#F4A582", "#FDDBC7",
"#FFFFFF", "#D1E5F0", "#92C5DE", "#4393C3", "#2166AC", "#053061"))
这会给你更多的红色:
colnew <- colorRampPalette(c("#670000", "#B20000", "#D60000", "#F40000", "#FD0000", "#FFFFFF"))
我认为最后添加一个“棕色”扩展了范围,以便更好地进行视觉分离:
col= colorRampPalette(c("white","lightpink", "red","brown"))(10)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.