我使用以下代码使用ggplot创建绘图:
m = ggplot(derv, aes(x=Date, y=derv, colour = Season)) + geom_point()
m2 = m+geom_abline(intercept = 0, slope = 0)
m3 = m2 + geom_abline(intercept = 2.578269274, slope = 0)
m3 = m3 + geom_abline(intercept = -1.4242559021, slope = 0)
这个情节看起来很漂亮但是对于某些间隔,例如2010sp和2010au,我很难分辨出颜色何时发生变化。所以我想改变这个情节的配色方案。
我尝试了以下代码:
m3+scale_color_brewer(palette="Dark2")
但我收到一条警告信息:
2: In RColorBrewer::brewer.pal(n, pal) :
n too large, allowed maximum for palette Dark2 is 8
Returning the palette you asked for with that many colors
我检查了可用的调色板,最大的调色板包含12种颜色,但我需要14种颜色,所以我想知道是否有办法解决这个问题。
答案 0 :(得分:8)
如果您确实需要/需要的颜色多于调色板中给出的颜色,则可以连接两个不同的调色板,然后使用scale_color_manual。我无法重现你的例子,但希望这传达了一般观点:
mycolors = c(brewer.pal(name="Dark2", n = 8), brewer.pal(name="Paired", n = 6))
ggplot(derv, aes(x=Date, y=derv, colour = Season)) +
geom_point() +
geom_abline(intercept = 0, slope = 0) +
geom_abline(intercept = 2.578269274, slope = 0) +
geom_abline(intercept = -1.4242559021, slope = 0) +
scale_color_manual(values = mycolors)
顺便说一下,如果你能在下次提供一个简单且可重复的例子,那将会很棒。也许只需将您的数据的一部分和dput()
放入问题中,或者通过运行与您的数据格式最相似的data()
来使用您可以找到的数据集之一。