Используйте ggplot() для каждой группы применяется group_by()

Я использую facet_wrap для каждого группового сюжета, но мне нужно сохранить каждый отдельный сюжет и найти по ссылке.

Я попытался запрограммировать ответ в URL-ссылке и могу сохранить PDF-файл, но представлю сообщение об ошибке.

КОД:

iris %>% group_by(Species) %>% 
  do({
    p <- ggplot(., aes(x =Sepal.Length, y = Petal.Length)) + geom_point()
    ggsave(p, filename = paste0("fig/", unique(.$Species), ".pdf"))
  })

СООБЩЕНИЕ ОБ ОШИБКЕ:

Results are not data frames at positions: 1, 2, 3

URL: применение функции к выводу dplyr group_by

1 ответ

Решение

Мы можем сделать do иметь точку (или просто любой data.frame в этом отношении)

iris %>% group_by(Species) %>% 
  do({
    p <- ggplot(., aes(x =Sepal.Length, y = Petal.Length)) + geom_point()
    ggsave(p, filename = paste0("fig", unique(.$Species), ".pdf"))
    invisible(.)
  })
Другие вопросы по тегам