Подтвердить что ты не робот

Удалить название легенды в ggplot

Я пытаюсь удалить заголовок легенды в ggplot2:

df <- data.frame(
  g = rep(letters[1:2], 5),
  x = rnorm(10),
  y = rnorm(10)
)

library(ggplot2)
ggplot(df, aes(x, y, colour=g)) +
  geom_line(stat="identity") + 
  theme(legend.position="bottom")

enter image description here

Я видел этот вопрос, и ни одно из решений, похоже, не работает для меня. Большинство из них дают ошибку о том, как opts устарел и использовать theme. Я также пробовал различные версии theme(legend.title=NULL), theme(legend.title=""), theme(legend.title=element_blank) и т.д. Типичные сообщения об ошибках:

'opts' is deprecated. Use 'theme' instead. (Deprecated; last used in version 0.9.1)
'theme_blank' is deprecated. Use 'element_blank' instead. (Deprecated; last used in version 0.9.1)

Я использую ggplot2 впервые, так как была выпущена версия 0.9.3, и мне трудно перемещаться по некоторым изменениям...

4b9b3361

Ответ 1

Вы были почти там: просто добавьте theme(legend.title=element_blank())

ggplot(df, aes(x, y, colour=g)) +
  geom_line(stat="identity") + 
  theme(legend.position="bottom") +
  theme(legend.title=element_blank())

На этой странице в Cookbook for R содержится подробная информация о том, как настроить легенды.

Ответ 2

Это тоже работает, а также демонстрирует, как изменить название легенды:

ggplot(df, aes(x, y, colour=g)) +
  geom_line(stat="identity") + 
  theme(legend.position="bottom") +
  scale_color_discrete(name="")

Ответ 3

Для Error: 'opts' is deprecated. Вместо этого используйте theme(). (Defunct; последний используется в версии 0.9.1) ' Я заменил opts(title = "Boxplot - Candidate Tweet Scores") на labs(title = "Boxplot - Candidate Tweet Scores"). Это сработало!