2013-06-05 58 views
4

我在R中使用pheatmap軟件包來製作不同種類數據的熱圖。使用colorramppalette製作顏色,但顏色非常明亮。如何增加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但產生深顏色?

+0

我試圖that..for例如,我想這樣的http://genome.cshlp.org/content/21/2/245/F2.large。 jpg – abh

+0

你可能想閱讀關於SO如何工作的[** about **](http://stackoverflow.com/about)和[** faq **](http://stackoverflow.com/faq) 。如果您收到解決問題的答案,您可以通過單擊小號複選標記或向上提取它來接受StackOverflow。您絕對沒有義務這樣做,但如果答案確實解決了您的問題,並且有助於通過從網站中刪除回答問題來幫助保持網站清潔,那麼這是「回饋」網站的好方法沒有答案的問題堆棧。如果你需要進一步的顏色建議請問 –

回答

6

嘗試使用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)和內插顏色colorRampPalettebrewer.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