我将相同的变量(颜色)映射到两个不同几何中的颜色。我希望它们要么出现在单独的图例(DHJ和EFI)中,要么最好完全跳过第二个图例(对于E,F和I)。目前,R将两者混合在一起,并给了我一个图例,该图例按字母顺序列出了DEFHIJ,它们都混合在一起。
基本上,我想将今天的点绘制到一些使用标准数据集的平滑线上。我不想对平滑线有一个传说-我们都熟悉它们,并且它们在我们所有图形中都是标准的。我只想要一个传说来说明要点。
我已经show.legend = FALSE
按照其他地方的建议进行了尝试,但这似乎没有效果。guides(color = FALSE)
删除整个图例。
代表:
library(tidyverse)
set1 <- diamonds %>%
filter(color %in% c("D", "H", "J"))
set2 <- diamonds %>%
filter(color %in% c("E", "F", "I"))
ggplot() +
geom_point(data = set1,
aes(x = x, y = y, color = color)) +
geom_smooth(data = set2,
show.legend = FALSE,
aes(x = x, y = y, color = color))
如果希望图例仅显示一个数据集中的颜色,则可以通过将breaks
in设置scale_color_discrete()
为这些值来实现。
... +
scale_color_discrete(breaks = unique(set1$color) )
如果您不使用线条的颜色,因为这是标准的背景信息,则可以使用group
ingeom_smooth()
代替来添加线条color
。(另请参阅linetype
是否要能够区分界线。)
ggplot() +
geom_point(data = set1,
aes(x = x, y = y, color = color)) +
geom_smooth(data = set2,
aes(x = x, y = y, group = color))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句