我需要一种方法来增加由 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 分辨率的方法?
最佳答案
您可以传递 ani.dev = function(...){png(res=75*grain,...) 而不是传递
,其中 ani.dev="png"
}grain
是某个数字 > 1。如果您指定选项 ani.height
和/或 ani.width
和将这些值乘以相同的因子 grain
,然后您可以有效地通过该因子增加输出的像素分辨率。
注意:上面的默认分辨率 75
可能取决于机器,我没有看到它的文档。
关于r - 在 R 中使用 saveHTML() {animation} 时增加 png 分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30670613/