Suponha que eu tenha um ggplot com mais de uma legenda.
mov <- subset(movies, length != "")
(p0 <- ggplot(mov, aes(year, rating, colour = length, shape = mpaa)) +
geom_point()
)
Eu posso desligar a exibição de todas as lendas como esta:
(p1 <- p0 + theme(legend.position = "none"))
Passar show_guide = FALSEpara geom_point(conforme esta pergunta ) desativa a legenda da forma.
(p2 <- ggplot(mov, aes(year, rating, colour = length, shape = mpaa)) +
geom_point(show_guide = FALSE)
)
Mas e se eu quiser desativar a legenda das cores? Não parece haver uma maneira de dizer a show_guidequal lenda aplicar seu comportamento. E não há show_guideargumento para escalas ou estética.
(p3 <- ggplot(mov, aes(year, rating, colour = length, shape = mpaa)) +
scale_colour_discrete(show_guide = FALSE) +
geom_point()
)
# Error in discrete_scale
(p4 <- ggplot(mov, aes(year, rating, shape = mpaa)) +
aes(colour = length, show_guide = FALSE) +
geom_point()
)
#draws both legends
Esta pergunta sugere que a maneira moderna (desde ggplot2 v0.9.2) de controlar legendas está com a guidesfunção
Eu quero ser capaz de fazer algo como
p0 + guides(
colour = guide_legend(show = FALSE)
)
mas guide_legendnão tem argumento de show.
Como especifico quais legendas são exibidas?
ggplot2atualização recente ,show_guidefoi preterido e substituído porshow.legend.