gganimate не может отобразить анимацию - PullRequest
0 голосов
/ 17 февраля 2020

Я пытаюсь узнать, как получить довольно оживленную графику c, используя R и gganimate, и я сталкиваюсь с некоторой проблемой. Когда я пытаюсь анимировать мою графику, R, кажется, редактирует несколько файлов PNG, но затем не может их отрендерить. Вот пример кода, который я использую (tidyverse, gganimate и gifski были загружены первыми):

p <- ggplot(iris, aes(Sepal.Length, Petal.Length)) + geom_point()
p + transition_states(Species)

R запустить первую строку без проблем. Когда дело доходит до второй строки, консоль печатает «render ----> et c» с обратным отсчетом в течение нескольких секунд. Когда все закончится, он напечатает много строк, которые, кажется, описывают анимированный объект (список файлов png, список состояний и т. Д. c). Я предполагаю, что это нормально.

Наконец, и мне кажется, что это проблема, R дает мне предупреждающее сообщение:

file_renderer failed to copy frames to the destination directory

И, конечно, у меня нет анимации.

Я видел другие темы по этому поводу, говоря, что, возможно, это проблема с разрешением, но я недостаточно хорош, чтобы понять, что делать. Я воспроизвел проблему на двух машинах, один на Ubuntu, другой на Windows.

Может кто-нибудь помочь мне? Большое спасибо!

Ответы [ 2 ]

1 голос
/ 20 февраля 2020

Я действительно не понимаю, почему, но проблема была решена сама собой. На обоих компьютерах и обеих ОС теперь работает один и тот же код. Я ничего не изменил, поэтому не могу сказать, в чем причина, и это очень странно, потому что две машины не имеют ничего общего. Тем не менее, они оба не могли создать анимацию два дня go, и теперь они оба могут.

Вывод: если у кого-то есть такая же проблема, может быть, просто повторите попытку позже?

Вывод 2: может быть, я просто глуп, но я мог бы использовать объяснение, чтобы узнать, почему тогда:)

0 голосов
/ 06 мая 2020

сначала установите пакет gifski и введите код ниже. Я добавил еще одну строку. обратите внимание, как +transition_states(Species) является частью первой строки, чтобы сделать один p

p <- ggplot(iris, aes(Sepal.Length, Petal.Length)) + 
geom_point()+
transition_states(Species)

animate(p, renderer = gifski_renderer())
...