R: ggplot — Разное название для каждого объекта в списке графиков

#r #ggplot2 #title

Вопрос:

в настоящее время я пытаюсь составить список графиков с помощью ggplot из списка кадров данных (94 временных ряда). Затем я хочу экспортировать графики в PDF. Это, до сих пор, было успешным, используя следующий код:

 plot.list = lapply(HR_clean, function(x) {
y = length(x)
  z = data.frame("HR" = x, "Time" = rep(1:y, 1))
  ggplot(z, aes(x = Time, y = HR))  
    theme_bw()  
    geom_line(linetype = "solid")  
    ggtitle("Plot Title")
    })

ggsave(
  filename = "plots2.pdf", 
  plot = marrangeGrob(plot.list, nrow=1, ncol=1), 
  width = 15, height = 9
)
 

Однако я также хочу, чтобы основным названием каждого участка было имя соответствующего объекта списка. Возможно, кто-нибудь знает разумное решение этой проблемы.

Всего наилучшего, Джонсон

Ответ №1:

Я не мог проверить это (так как вы не предоставляете примеры данных), но это должно работать с использованием purrr imap() :

 plot.list <- purrr::imap(HR_clean, function(x, name) {
  y <- length(x)
  z <- data.frame("HR" = x, "Time" = rep(1:y, 1))
  ggplot(z, aes(x = Time, y = HR))  
    theme_bw()  
    geom_line(linetype = "solid")  
    ggtitle(name)
})