2016-06-29 5 views
1

У меня есть несколько точек данных, и я хочу выделить некоторые из точек в моей визуализации. Я хотел бы сделать это следующим образом:Отображать только определенные метки легенды ggplot

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

Моя проблема в том, что черные точки очень понятны и не нуждаются в этикетку. Я хочу только появляется красная специальная метка. Есть ли способ скрыть «нормальный» ярлык?

ответ

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

EDIT:

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

 Смежные вопросы

  • Нет связанных вопросов^_^