R ggplot2 修改默認顏色的操作

我們都知道ggplot2包是R的神器,很多生物學文章都選擇用這個包來畫圖。用ggplot2就像玩俄羅斯方塊一樣,一層一層地往上疊加元素,這使得它用起來很方便。

個人覺得它默認的配色系統很不錯,但看到顏色後卻不知道這種顏色叫啥,今天就來介紹一下,如果你有1~6個元素,ggplot2給的配色分別是啥。

1個元素:

2個元素(顏色分配順序為先從左到右,後從上到下):

3個元素:

4個元素:

5個元素:

6個元素:

多餘6個元素大傢可以用下面的代碼去實現

運行的代碼為:

library(scales)
show_col(hue_pal()(n)) #n為1~6

補充:R語言ggplot中的顏色

ggplot2分組時默認使用的顏色,可以從另一個hadley寫的包,scales包中調用。這個包算是一個工具包,用於和hadley寫的其他包配合使用,顏色是其中一部分。

library(scales)
show_col(hue_pal()(3))
# show_col(hue_pal(h = c(0, 360) + 15, c = 100, l = 65)(3)) # 和上面一樣,默認設置

hue_pal函數的默認設置,其中h是色相,范圍越大,相鄰顏色之間差異越大;c是飽和度,值越大色彩越濃艷飽滿;l是亮度,大亮小暗。

柱狀圖的顏色搭配:

colorbar <- function(values){
 groupbar + scale_fill_manual(values = values)
}
 
colorlist <- list(c("#8FBC94","#548687"),c("#4FB0C6","#4F86C6"),
         c("#C65146","#EC6A5C"),c("#6E7783","#77AAAD"),
         c("#e97f02","#f8ca00"),c("#3a5134","#4f953b"),
         c("#99CCCC","#FFCC99"),c("#CC9999","#CCCC99"),
         c("#0099CC","#FF6666"),c("#339966","#996699"),
         c("#CC9966","#666666"),c("#336666","#CCCC33"),
         brewer.pal(7, "Set1")[c(1,2)],brewer.pal(7, "Set1")[c(3,4)],
         brewer.pal(7, "Set2")[c(5,6)],brewer.pal(7, "Set3")[c(6,7)],
         brewer.pal(7, "Greens")[c(4,5)],brewer.pal(7, "Blues")[c(4,5)],
         brewer.pal(7, "Oranges")[c(4,5)],brewer.pal(7, "Purples")[c(4,5)]
         )
 
p <- marrangeGrob(lapply(colorlist, colorbar), nrow=0.5*length(colorlist), ncol=2, top="")
p

另外兩個比較常用的顏色設置:

scale_fill_manual(): 填充色

scale_color_manual():輪廓色,如點線

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。