Изменение легенды сюжета с помощью geom_smooth в ggplot2

У меня есть очень простая проблема, с которой я борюсь, а именно: изменение легенды сюжета с помощью geom_smooth в ggplot2.

Вот мой код:

p1<-    mtcars$group <- factor(mtcars$vs)
    ggplot(mtcars, aes(x=mpg, y=disp, group=group)) +
      geom_smooth(method=lm, se=FALSE,fullrange=TRUE, show.legend=TRUE,aes(linetype=group), colour="black")

p1

результат р1

То, что я хотел бы сделать, это изменить метки: то есть: с "группа" на "легенда" и с "0" на "эксперимент" и "1" на "контроль". Я попытался сделать это, добавив аргумент labs и используя scale_fill_discrete:

p2<-  ggplot(mtcars, aes(x=mpg, y=disp, group=group)) +
        geom_smooth(method=lm, se=FALSE,fullrange=TRUE, show.legend=TRUE,aes(linetype=group), colour="black")+
        labs(linetype="Legend")+
      scale_fill_discrete(labels=c("Experiment", "Control"))
p2

Результат изменяет заголовок легенды ( p2), но все равно не меняет метки. Есть идеи?

РЕДАКТИРОВАТЬ:

Это решает проблему, спасибо за быстрые ответы:

ggplot(mtcars, aes(x=mpg, y=disp, group=group)) +
  geom_smooth(method=lm, se=FALSE,fullrange=TRUE, show.legend=TRUE,aes(linetype=group), colour="black")+
  labs(linetype="Legend")+
  scale_linetype_discrete(labels=c("Experiment", "Control"))

Моя ошибка заключалась в использовании scale_fill_discrete вместо scale_linetype_discrete,

1 ответ

Вы получаете сообщение об ошибке, если запускаете такой код?

ggplot(mtcars, aes(x=mpg, y=disp, group=group)) +
    geom_smooth(method=lm, se=FALSE,fullrange=TRUE, show.legend=TRUE,aes(linetype=group), colour="black")+
    labs(linetype="Legend")+
    scale_linetype_discrete(labels=c("Experiment", "Control"))

Я получаю этот сюжет:

введите описание изображения здесь

Другие вопросы по тегам