我已经从一个非常大的向量(10^7的量级)创建了一个图。通常将绘图保存为pdf文件的问题是,pdf文件是一个大约10MB的非常大的文件。对于简单的时间序列图,我不想要这么大的尺寸。如何保存绘图,使其大小足够小,最大为100KB?
发布于 2013-07-05 03:48:12
baptiste是在正确的轨道上,他们的建议png为一个很好的光栅类型的绘图。与Jdbaba建议复制打开的设备相反,我建议您直接调用png()设备。这将节省大量时间,因为您不必先在单独的设备窗口中加载绘图,如果数据集很大,加载可能需要很长时间。
示例
#plotting of 1e+06 points
x <- rnorm(1000000)
y <- rnorm(1000000)
png("myplot.png", width=4, height=4, units="in", res=300)
par(mar=c(4,4,1,1))
plot(x,y,col=rgb(0,0,0,0.03), pch=".", cex=2)
dev.off() #only 129kb in size

有关png设备的其他设置,请参见?png。
发布于 2013-07-05 03:10:32
如果要打印png文件,请使用以下命令:
dev.copy(png,"myfile.png",width=8,height=6,units="in",res=100)
dev.off()如果要输出高质量的图形,可以将res值更改为更高的值。
如果要将文件另存为pdf,请使用以下命令:
pdf("myfile.pdf",width=8,height=6)
dev.off()请记住根据需要更改宽度和高度值。
https://stackoverflow.com/questions/17476769
复制相似问题