Несколько великолепных участков рядом - PullRequest
0 голосов
/ 09 января 2019

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

Сюжеты для работы с:

library(ggplot2)
library(gganimate)

anime_one <- 
  ggplot(mtcars, aes(factor(cyl), mpg)) + 
  geom_boxplot() + 
  # Here comes the gganimate code
  transition_states(
    gear,
    transition_length = 2,
    state_length = 1
  ) +
  enter_fade() + 
  exit_shrink() +
  ease_aes('sine-in-out')

anime_two <- 
  ggplot(mtcars, aes(factor(cyl), mpg, fill = factor(cyl))) + 
  geom_boxplot() + 
  # Here comes the gganimate code
  transition_states(
    gear,
    transition_length = 2,
    state_length = 1
  ) +
  enter_fade() + 
  exit_shrink() +
  ease_aes('sine-in-out')

Первая попытка:

library(patchwork)
anime_one + anime_two  

Error in UseMethod("ggplot_gtable") : 
no applicable method for 'ggplot_gtable' applied to an object of class 
"gganim_built"

Вторая попытка:

library(patchwork)
animate(anime_one+anime_two)

Это на самом деле визуализирует и не выдает ошибку, но в результате получается анимация только последнего объекта "gganim_built" (здесь anime_two)

Третья попытка (работает, но не совсем то, что я ищу)
Единственное промежуточное решение, которое я нашел, - это включить все в документ Rmarkdown, а затем создать кодовые блоки с вызовами анимации (только один вызов анимации pr кодовый блок, иначе это не сработает) и, наконец, связать документ с HTML:

```{r}
animate(anime_one)
```

```{r}
animate(anime_two)
```

Кому-нибудь удалось заставить соседние объекты выглядеть рядом?

Заранее спасибо.

1 Ответ

0 голосов
/ 10 января 2019

Похоже, что справочные документы gganimate переписываются, и, возможно, вы можете найти решение по поводу "композиции анимации" здесь:

https://github.com/thomasp85/gganimate/wiki/Animation-Composition

Под заголовком «Размещение анимации рядом с магией» есть способ сделать это. Надеюсь, что эта помощь

...