ggplot2顏色設置


@Date: 2017-08-22 10:09:44



利用R語言畫圖時經常用到不同的顏色,如何手動設置不同的顏色呢並且指定顏色順序呢?一般自動顏色都是利用fill或者color參數指定,這種時候需要改變fill或者color調用的調色板,主要方法有以下兩種。

1. 手動指定顏色及順序

ggplot2涉及到的顏色主要由兩種參數函數指定:

  • scale_fill_manual() for box plot, bar plot, violin plot, etc
    • scale_color_manual() for lines and points

使用方法如下:

# Box plot
bp + scale_fill_manual(values=c("#999999", "#E69F00", "#56B4E9"))
# Scatter plot
sp + scale_color_manual(values=c("#999999", "#E69F00", "#56B4E9"))

也可指定不同的變量值對應不同的顏色:

# Box plot
bp + scale_fill_manual(breaks = c("2", "1", "0.5"),
                       values=c("red", "blue", "green"))
# Scatter plot
sp + scale_color_manual(breaks = c("8", "6", "4"),
                        values=c("red", "blue", "green"))

改變顏色的透明度

bp + scale_fill_manual(values = alpha(c("blue", "red", "yellow"), .3))

2. 直接改變調色板

ggplot2中有自有的調色板,同時也可以自己設定調色板,設定方法如下:

1
2

# The palette with grey:
cbPalette <- c("#999999", "#E69F00", "#56B4E9", "#009E73", "#F0E442", "#0072B2", "#D55E00", "#CC79A7")

# The palette with black:
cbbPalette <- c("#000000", "#E69F00", "#56B4E9", "#009E73", "#F0E442", "#0072B2", "#D55E00", "#CC79A7")

# To use for fills, add
  scale_fill_manual(values=cbPalette)

# To use for line and point colors, add
  scale_colour_manual(values=cbPalette)

3. 其它顏色及調色板相關信息

顏色信息:

http://www.cookbook-r.com/Graphs/Colors_(ggplot2)/colorblind_palette.jpg
http://www.cookbook-r.com/Graphs/Colors_(ggplot2)/hextable.png

默認調色板

http://www.cookbook-r.com/Graphs/Colors_(ggplot2)/figure/unnamed-chunk-14-1.png
col name

參考文獻

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章