LaT*_*Fan 5 r colors r-corrplot
我corrplot在R中使用如下可视化相关系数矩阵.
library(corrplot)
library(datasets)
corrplot(abs(cor(mtcars)), method="color", tl.pos="n", cl.lim = c(0,1))
Run Code Online (Sandbox Code Playgroud)

默认颜色方案是基于蓝色的.但是,我想把它改成红色的.我知道我需要用来colorRampPalette指定我想要的颜色.但是,我无法弄清楚要使用的颜色代码.有人可以帮帮我吗?
谢谢!
MrF*_*ick 10
如果你想使用红色,你可以像你提到的那样定义你自己的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))
Run Code Online (Sandbox Code Playgroud)
会产生

即使我们在调色板中定义了"蓝色",它也不会显示,因为我们将颜色条限制为大于1的值.
如果你拿出原来的版本,也可以看到颜色渐变驾驶室的"未使用"部分 cl.lim
corrplot(abs(cor(mtcars)), method="color", tl.pos="n")
Run Code Online (Sandbox Code Playgroud)

函数 colorRampPalette 返回一个采用数字参数的函数:
corrplot(abs(cor(mtcars)), method="color",
col= colorRampPalette(c("white","pink", "red"))(10) ,
tl.pos="n", cl.lim = c(0,1))
Run Code Online (Sandbox Code Playgroud)

默认值是使用以下色谱定义的:
col2 <- colorRampPalette(c("#67001F", "#B2182B", "#D6604D", "#F4A582", "#FDDBC7",
"#FFFFFF", "#D1E5F0", "#92C5DE", "#4393C3", "#2166AC", "#053061"))
Run Code Online (Sandbox Code Playgroud)
这将为您提供更广泛的红色:
colnew <- colorRampPalette(c("#670000", "#B20000", "#D60000", "#F40000", "#FD0000", "#FFFFFF"))
Run Code Online (Sandbox Code Playgroud)
我认为在末尾添加“棕色”可以扩大范围,以获得更好的视觉分离:
col= colorRampPalette(c("white","lightpink", "red","brown"))(10)
Run Code Online (Sandbox Code Playgroud)