用户特定颜色,同时绘制随机数量的元素

时间:2017-11-20 23:10:49

标签: r ggplot2

假设我想在R中绘制具有不同颜色的矢量。我写道:

    x <- 1:10
    plot(x,col=x)

,或者

    x <- 1:5
    plot(x,col=x)

从情节中可以看出,在两种情况下,&#34;红色&#34;是R选择的第二种颜色,黑色是第一种颜色。我想制作&#34; red&#34;第一个。

请注意,定义5或10种颜色不是解决方案,因为5和10是任意数字。

任何帮助都会有所帮助。

我最初的问题是使用以下方法在ggplot2中定义用户特定的颜色:

    aes(color=factor(Variable))

在这里,我想把第一种颜色变成红色。

1 个答案:

答案 0 :(得分:1)

这里有两个不同的问题。

使用基础R绘图时,会从默认调色板中选择颜色:

palette()
[1] "black"   "red"     "green3"  "blue"    "cyan"    "magenta" "yellow"  "gray"

现在你明白为什么黑色是第一个而红色是第二个。在您的示例中,要先获得红色,您可以尝试:

plot(1:5, col = 2:6)

但实际上,无论是情节还是配色方案都没有多大意义。

现在到ggplot2:它使用自己的调色板as described in these answers。如果要通过因子变量着色并覆盖该调色板,可以将scale_color_brewer()与定义的调色板结合使用,例如

+ scale_color_brewer(palette = "Dark2")

或使用您自己的颜色,scale_color_manual()例如,第一种颜色为红色:

+ scale_color_manual(values = c("red", "blue", "green", ...)