R 动画缩放参数
我正在寻找一种优雅/简洁的方法来制作R动画,该动画在我的R 动画缩放参数,r,animated-gif,gganimate,R,Animated Gif,Gganimate,我正在寻找一种优雅/简洁的方法来制作R动画,该动画在我的y比例变换中移动参数。 假设我有以下数据和图表: library(tidyverse); library(gganimate); library(scales) my_data <- tibble(time = 1:100, value = (5*sin(time/100))^6 + (1E3*sin(time/5))) scale_plot <- function(sig) { ggplot(my_data, aes(t
y
比例变换中移动参数。
假设我有以下数据和图表:
library(tidyverse); library(gganimate); library(scales)
my_data <- tibble(time = 1:100, value = (5*sin(time/100))^6 + (1E3*sin(time/5)))
scale_plot <- function(sig) {
ggplot(my_data, aes(time, value)) +
geom_line() + labs(title = paste("sigma =", {{ sig }})) +
scale_y_continuous(trans = pseudo_log_trans(sigma = sig))
}
我想要一个优雅/简洁的方式来制作一个动画,在这些动画之间切换。我遇到过使用循环生成一系列静态图像的方法,然后使用gifski
或animation
之类的方法将它们编译成GIF。(请参阅。)理想情况下,我希望找到一种使用gganimate
的方法,但到目前为止,我只知道如何为数据中的更改或视口中的更改设置动画(例如,使用gganimate::view_manual
),而不是转换的参数。有没有比“手动”构造帧更简洁的方法呢?采用这种方法,可以通过创建帧,然后使用动画
包将它们组合起来。使用gganimate
有没有更好的方法
library(animation); library(Cairo)
sig_seq = (10:150)^2
oopt = ani.options(interval = 1/10)
CairoPNG(filename = ani.options("img.fmt")) #using Cairo device for smoother antialiasing
saveGIF({for (i in 1:length(sig_seq)) {
print(scale_plot(sig_seq[i]))
print(paste0(i, " out of ",length(sig_seq)))
ani.pause()}
},movie.name="sigma_anim.gif", ani.width = 300, ani.height = 200)
scale_plot(200) # toward log
library(animation); library(Cairo)
sig_seq = (10:150)^2
oopt = ani.options(interval = 1/10)
CairoPNG(filename = ani.options("img.fmt")) #using Cairo device for smoother antialiasing
saveGIF({for (i in 1:length(sig_seq)) {
print(scale_plot(sig_seq[i]))
print(paste0(i, " out of ",length(sig_seq)))
ani.pause()}
},movie.name="sigma_anim.gif", ani.width = 300, ani.height = 200)