在R中,我可以輕鬆生成一個顏色漸變,例如colorRampPalette。以下產生從藍色到紅色的五種顏色的序列:如何在R中生成從數字到顏色的映射?
> mypal <- colorRampPalette(c("blue", "red"))(5)
> mypal
[1] "#0000FF" "#3F00BF" "#7F007F" "#BF003F" "#FF0000"
如何在此調色板上輕鬆映射數字矢量?我說,我有一個數字0到10之間的載體,就像這樣:
x <- c(1, 9, 8.5, 3, 3.4, 6.2)
我想一個函數,說map2color
,這樣當我運行map2color(mypal, x)
,我得到
#0000FF, #FF0000, #FF0000, #3F00BF, #3F00BF, #BF003F
我通常這樣做以下
mypalette[ findInterval(x, seq(0, 10, length.out= 6), rightmost.closed= T) ]
但也許有更好的解決方案OOB自動生成彩色刻度數字矢量。
你可能有更多的運氣在HCL色彩空間和不同的亮度,看到'?hcl' – James 2013-02-21 16:40:09