我需要一种方法来提高saveHTML()创建的png文件的分辨率。
这是我想要做的虚拟脚本,其中实际上plot()是一些嵌套循环:
x<-y<-rep(1,10)
saveHTML( for (i in 1:10){
plot.new()
plot.window(xlim=c(0,10),ylim=c(0,10))
plot(x[i],y[i])
}
,ani.dev="png",img.name="test",htmlfile="test")
我尝试过的一些事情: 1)使用ani.options(ani.height,ani.width)增加动画大小,但我只获得更大的粒状图像。 2)在saveHTML表达式中调用png()设备并在那里设置分辨率,但最终我得不到任何数字。 3)调用一个新的windows()设备来绘制和设置窗口大小,但这也不会增加分辨率。
我遇到的最直接的解决方法是使用ffmpeg创建高分辨率的png和动画。但我还没准备好重新编写我的脚本。
有没有人找到一种方法来增加saveHTML()函数中的png分辨率?
答案 0 :(得分:1)
您可以传递ani.dev = function(...){png(res=75*grain,...)}
,而不是传递grain
,其中ani.height
是某个数字&gt; 1.如果您指定选项ani.width
和/或grain
并将这些值乘以相同因子75
,那么您可以通过此因子有效地提高输出的像素分辨率。
N.B。:上面的默认分辨率{{1}}可能与机器有关,我没有看到它的记录。