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中有自有的调色板,同时也可以自己设定调色板,设定方法如下:


# 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.sthda.com/english/wiki/ggplot2-colors-how-to-change-colors-automatically-and-manually
  • http://ggplot2.tidyverse.org/reference/aes_colour_fill_alpha.html
  • http://www.cookbook-r.com/Graphs/Colors_(ggplot2)/

你可能感兴趣的:(ggplot2颜色设置)