R 打印时创建多个文件类型

R 打印时创建多个文件类型,r,sna,R,Sna,我想在高分辨率和低分辨率版本中生成一系列绘图,或者使用两种不同的文件类型(.png和.eps)进行不同的说明。我想知道做这件事最好/最少的方法。我正在使用sna中的gplot功能,绘图区域外有一个自定义图例。我写了一个类似这样的函数: library(sna) plotfun <- function(net){ png("test.png",width=800) p <- gplot(net) par(xpd=T) legend(max(p[

我想在高分辨率和低分辨率版本中生成一系列绘图,或者使用两种不同的文件类型(.png和.eps)进行不同的说明。我想知道做这件事最好/最少的方法。我正在使用
sna
中的
gplot
功能,绘图区域外有一个自定义图例。我写了一个类似这样的函数:

library(sna)
plotfun <- function(net){
   png("test.png",width=800)
     p <- gplot(net)
     par(xpd=T)   
     legend(max(p[,1])+1,max(p[,2]),legend=letters[1:10],title="custom legend")
   dev.off()
   seteps()
   postscript(test.eps)
      #repeat all the plotting commands, which are much longer in real life
   dev.off()
}
#try it with some random data
plotfun(rgraph(10))
库(sna)

plotfun我建议仅从R生成Postscript/PDF格式的图形,然后使用ImageMagick等工具从Postscript/PDF格式生成位图(例如PNG),并适当设置
-density
参数()以获得所需的分辨率。比如说


转换-密度100-质量100 picture.pdf picture.png

假设
picture.pdf
为7英寸乘7英寸(R默认值),将显示700x700 png图片

使用这种方法,您不必担心图片的格式会因使用的R设备不同而有所不同(
pdf()
vs
png()