gpt4 book ai didi

r - 如何增加 colorramppalette 中的颜色强度

转载 作者:行者123 更新时间:2023-12-05 00:29:47 25 4
gpt4 key购买 nike

我在 R 中使用 pheatmap 包来制作不同类型数据的热图……并使用 colorramppalette 制作颜色,但颜色非常明亮。

我想要一些深色,我该怎么做?

这是代码:

hmcols<-colorRampPalette(c("white","red"))(256)

pheatmap(
test,
color=hmcols,
cluster_rows=FALSE,
cluster_cols=FALSE,
legend=TRUE,
show_rownames=FALSE,
show_colnames=FALSE,
filename="a.png"
)

我如何在 colorramppalette 中增加颜色强度,或者我可以使用任何其他类似于 pheatmap 但产生深色的热图包吗?

最佳答案

尝试使用 hcl并调整亮度步长。例如:

cols <- hcl(0,l=seq(1,100,length=11))
cols
# [1] "#3F0000" "#470016" "#591D2D" "#6F3744" "#87505B" "#A06974" "#BB838D" "#D69DA8"
# [9] "#F1B8C3" "#FFD4DE" "#FFF0FB"
plot(1:11,cex=4,bg=cols,pch=21)
?hcl下有很多例子我相信你会找到一些适合你需要的颜色中断。

如果这不适合您的需要,您还可以使用 RColorBrewer 下的一些色标。包,我强烈推荐(查看他们的 excellent website 以获得更多色阶),并使用 colorRampPalette 插入颜色与 brewer.pal并且可能会截断色阶的末端。

您也可以使用发散色标,同样来自 RColorBrewer与顺序相反。所以这里有一些例子:
require(RColorBrewer)
par(mfrow=c(2,2))

cols <- colorRampPalette( colors = hcl(0,l=seq(1,100,length=11)) )
plot( 1:11 , cex = 4 , bg = cols(11) , pch = 21 , main = "HCL Colours")

cols <- colorRampPalette( colors = rev(brewer.pal(9,"Reds")) )
plot( 1:11 , cex = 4 , bg = cols(11) , pch = 21 , main = "Sequential RColorBrewer palette")

cols <- colorRampPalette( colors = rev(brewer.pal(9,"Reds"))[1:5] )
plot( 1:11 , cex = 4 , bg = cols(11) , pch = 21 , main = "Truncated sequential\nRColorBrewer palette" )

cols <- colorRampPalette( colors = brewer.pal(9,"RdBu") )
plot( 1:11 , cex = 4 , bg = cols(11) , pch = 21 , main = "Diverging RColorBrewer palette" )

enter image description here

关于r - 如何增加 colorramppalette 中的颜色强度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16951593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com