R ggplot2 соответствует сглаженной линии для всех данных при наличии групп

#r #ggplot2

Вопрос:

Следующий код заставляет каждую группу иметь разные цветные точки на диаграмме рассеяния.

 df = mtcars

df$cyl = factor(df$cyl)

ggplot(df, aes(x = mpg, y = disp, colour = cyl, group = cyl))   
  geom_point(size = 5)   
  geom_smooth()
 

Однако, когда я добавляю гладкую линию — для каждой группы создается сглаженная линия. Как добавить сглаженную линию для всех данных, сохранив при этом различные цвета групп?

Данные, окрашенные по группам

Ответ №1:

измените расположение цвета, и группа сделает

     df %>%
    ggplot( aes(x = mpg, y = disp))   
      geom_point(size = 5, aes(colour = cyl, group = cyl))   
      geom_smooth()
 

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