仅显示ggplot图例

时间:2016-06-29 21:11:00

标签: r ggplot2 legend

我有一些数据点,我想在我的可视化中挑出一些点。我会这样做:

df = data.frame(
  x = 1:4, y = 1:4,
  special = c('normal', 'normal', 'normal', 'special')
)

ggplot(df) +
  geom_point(aes(x, y, color = special)) +
  scale_color_manual(values = c('red', 'black')) +
  labs(color = "") +
  theme_bw()

example

我的问题是黑点是非常自我解释的,不需要标签。我希望只是红色"特别"标签出现。有没有办法可以隐藏"正常"标签

1 个答案:

答案 0 :(得分:2)

如果您愿意使用除红色以外的任何颜色:

ggplot(df) +
    geom_point(aes(x, y, color = special)) + scale_size(guide = "none") + 
    scale_color_discrete(breaks="special") + labs(color = "") +
    theme_bw()

enter image description here

编辑:

cols <- c("normal" = "black","special" = "red")
gg <- ggplot(df) + geom_point(aes(x, y, color = special)) + labs(color = "") + theme_bw()
gg + scale_colour_manual(values = cols, limits = "special")

enter image description here