R个美丽的颜色为n个案例

时间:2015-10-21 10:21:33

标签: r plot colors ggplot2

假设你想在n中绘制一些R个不同的系列(如果你使用plot()ggplot2或{那么这并不重要{1}}。为了简单起见,我会使用lattice,你如何选择一组漂亮的颜色(如可区分,但外观漂亮)。

我知道有多种方法,但我也希望得到你的意见。

数据:

ggplot2

1。 GGplot标准:

优势:可扩展

缺点:在我看来并不是很漂亮

library(ggplot2) # for easy plots

n <- 10 # n cases for different numbers

set.seed(42)
dat <- data.frame(id = "A",
              group = 1:n,
              val = rnorm(n))

GGPlot standard

2。彩虹:

优点:可扩展,即没有最大数量的颜色

ggplot(dat, aes(x = id, y = val, fill = as.factor(group))) + 
  geom_bar(stat = "identity", position = "dodge")

Rainbow

RColorBrewer

优点:各种不同的颜色集

缺点:仅限于最多12种颜色

请参阅ColorBrewer2了解所有集。

ggplot(dat, aes(x = id, y = val, fill = as.factor(group))) + 
  geom_bar(stat = "identity", position = "dodge") +
  scale_fill_manual(values = rainbow(n))

ColorBrewre BRBG

问题

当您有超过10个案例时,如何设置绘图中的颜色?指定颜色时设置了什么标准?

如果您想添加您认为重要的因素,请随时编辑此帖子!

编辑:

与显示的图表相反,我处理时间序列,系列的颜色不包含任何信息,除了系列名称的识别

2 个答案:

答案 0 :(得分:2)

它可能不相关,但我使用此站点手动执行几乎所有操作: http://tools.medialab.sciences-po.fr/iwanthue/

理论选项卡很好地解释了所使用的方法。

答案 1 :(得分:2)

我同意罗兰的观点,认为10多个是一个问题。

我通常使用R默认值:黑色,红色,绿色,蓝色,青色,品红色,黄色,灰色;然后我可以添加橙色,紫色和栗色......

但在你的情况下,由于你有条形,你可以混合水平,对角和垂直线条,加上颜色和宽度,这样可以减少选择这么多颜色的麻烦。

另外:如果您的10个因子不是线性的,请避免使用产生渐变的颜色,例如RColorBrewer示例。

另外2:你可以随意随意,直到找到你喜欢的东西,然后保存。