首页 > 解决方案 > 刻面和 scale_color_manual

问题描述

使用 command scale_color_manual,您可以手动更改绘图的颜色。

dataPlot <- ggplot(df, aes(x=x, y=y)+
  geom_point(aes(shape=z))+
  scale_color_manual(values=c("#636363", "#de2d26", "#636363", "#636363"))

有没有办法手动更改每个方面使用的颜色?因此,例如,如果我有带有变量的构面,我该variable如何设置scale_color_manual以便我可以为x每个构面的每组设置颜色?

dataPlot <- ggplot(df, aes(x=x, y=y)+
  geom_point(aes(shape=z))+
  facet_grid(~variable)+
  scale_color_manual(values=c("#636363", "#de2d26", "#636363", "#636363"))

谢谢!!!

标签: rggplot2facet

解决方案


如果您想为每个构面使用不同的单色,这实际上是在构面和着色之间重复:对构面使用相同的变量color=

library(ggplot2)
ggplot(mtcars, aes(mpg, disp)) +
  geom_point(aes(shape = factor(gear), color = factor(cyl))) +
  facet_grid(~ cyl) +
  scale_color_manual(values = c("red", "green4", "blue"))

具有冗余面/颜色的 ggplot2

如果您要求为每个方面提供不同的色阶那就是另一回事了,我相信 basic 是不可能的ggplot2。有三个相关的扩展,目前未经测试,但他们声称支持这一点。没有特别的顺序:


推荐阅读