Анимированная линия наложения R - PullRequest
0 голосов
/ 18 апреля 2020

Я пытаюсь анимировать линейный сюжет, в котором две серии накладываются друг на друга. Первоначально пытался использовать ggplot, однако график не отображается должным образом, и ему не нравились наложенные серии, поэтому я использовал базу R для построения. Я наложил графики, используя points(), и попытался использовать animate(), однако это не сработало, как я думал. Загруженные пакеты: tidyverse, gganimate и gifski. Если кто-то может помочь дать предложения о том, как анимировать, а затем сохранить в GIF, я был бы очень признателен. Сценарий, используемый ниже.

Примечание: Var1 и Var3 имеют одинаковую непрерывную шкалу, а Var2 и Var4 имеют одинаковую непрерывную шкалу. Таким образом, график должен показывать прямое сравнение линии, созданной Var1 x Var 2, с Var3 x Var4. x_low_lim x_high_lim et c - это просто x_low_lim <- min(df$Var1, df$Var2) и так далее.

Данные (фактическое значение 1561 об.)

Var1         Var2        Var3        Var4 
0.01143254   402.15      0.01022165  359.556
0.01139741   491.618     0.010139741 359.33 
0.01137335   401.345     0.01015561  358.373
0.0113451    401.071     0.01011026  357.417
0.0113151    401.472     0.0100628   357.039
0.01128512   401.874     0.01001548  356.661


 p <- plot(x = df$Var1, y = df$Var2, type = "l",
  xlim = c(x_low_lim,x_high_lim),
  ylim = c(y_low_lim, y_high_lim),
  col = "red", xlab = "Vel", ylab = "For", main = "For-Vel") + 
  abline(v = 0) + 
  abline(h = df$Var2.left[1]) +
  points(x = df$Var3, y =df$Var4, type = "l", col = "blue") +
  legend("topright",c("Left", "Right"), text.col = c("red", "blue"))

animate(p, fps = 10, width = 750, height = 450)
anim_save("For-Vel.gif")
...