我有很多数据点的大图。当我在R中创建qplot时,图表自动适应窗口。即使我最大化窗口,图表仍然太小,细节丢失。我想将它保存为一个大的PNG,然后用图像查看器以1:1的分辨率查看某些区域(因为我无法在R中轻松放大)。为一系列值渲染图表并不是很方便,我想要有一个PNG并滚动并与同伴讨论,而不是预先生成一堆子图。创建大于窗口的qplots(与ggplot2)?
这可能吗?我有点期待如此,但一些帮助将不胜感激(我最近开始与R,所以我仍然找到我的方式)。
谢谢。
我有很多数据点的大图。当我在R中创建qplot时,图表自动适应窗口。即使我最大化窗口,图表仍然太小,细节丢失。我想将它保存为一个大的PNG,然后用图像查看器以1:1的分辨率查看某些区域(因为我无法在R中轻松放大)。为一系列值渲染图表并不是很方便,我想要有一个PNG并滚动并与同伴讨论,而不是预先生成一堆子图。创建大于窗口的qplots(与ggplot2)?
这可能吗?我有点期待如此,但一些帮助将不胜感激(我最近开始与R,所以我仍然找到我的方式)。
谢谢。
一种方法是:
myfile <- tempfile() # portable across OSs
pdf(file=myfile, height=20, width=20) # 20x20 inches, adjust at will
plot(....) # or print(....) for lattice + ggplot2
dev.off() # finalize and close file
cat("Look at", myfile, "\n")
现在检查图表中的温度。文件只是用一个合适的pdf查看器创建的,可以随意缩放。
退房this previous question和答案:
基本上,你可以使用开罗基包装,打造svg文件,这些文件是基于矢量的,不是像素,然后我就可以在Inkscape编辑这些,我想你可以查看他们直接在Firefox(???)。
library(Cairo)
Cairo(600,600,file="testplot.svg",type="svg",bg="transparent",pointsize=8, units="px",dpi=400)
testplot
dev.off()
Cairo(1200,1200,file="testplot12200.png",type="png",bg="transparent",pointsize=12, units="px",dpi=200)
testplot
dev.off()
现在我不得不使用各种设置来让我的情节尽可能好,直到写入文件之前。 (关键设置似乎是点的大小,它会改变图形上点的大小,显然大小和dpi)
谢谢,我今天试试。 – wishihadabettername 2010-03-04 12:33:50
谢谢。这确实产生了PDF,发现福昕在22MB文件上窒息(至少在100%CPU仍在处理5分钟之后)。我会给它更多的时间。 是否可以输出不是PDF而是PNG?图形查看器可以更轻松地处理大文件。如果没有,我可以接受这个解决方案。从另一个问题(http://stackoverflow.com/questions/2367328/how-to-change-current-plot-window-size-in-r)我了解了'dev.new',所以我会玩那个以及。 再次感谢。 – wishihadabettername 2010-03-04 03:38:47
如果你想缩放,然后你不想像png那样有损格式。 – 2010-03-04 03:40:52
PNG不是有损的,我猜你在考虑JPG。见http://en.wikipedia.org/wiki/Portable_Network_Graphics – wishihadabettername 2010-03-04 04:25:15