Контурный сгруппированный график

#r #ggplot2 #plot

#r #ggplot2 #график

Вопрос:

Я хотел бы обрисовать форму графика, созданного групповым графиком.

Используя этот код:

 # Libraries
library(ggplot2)
library(babynames)
library(dplyr)

# Keep only 3 names
don <- babynames %>% 
  filter(name %in% c("Ashley", "Patricia", "Helen")) %>%
  filter(sex=="F")
  
# Plot
don %>%
  ggplot( aes(x=year, y=n, group=name, color=name))  
    geom_line()
  

Я понимаю это:
сгруппированный график

Возможно ли сохранить только контур созданного графика? Пример вывода:

Конечный результат

Ответ №1:

Может быть ggplot2 способ сделать это, но здесь одна попытка с использованием dplyr :

 library(dplyr)
library(ggplot2)

don %>%
  group_by(year) %>%
  slice(which.max(n)) %>%
  ggplot( aes(x=year, y=n, group=name, color=name))  
  geom_line()
  

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

Логика здесь в том, что мы сохраняем только строку с максимальным n значением для каждой year , чтобы удалить все те линии, которые отображаются ниже нужной нам контурной линии.