将R绘图复制到自定义大小的剪贴板

时间:2014-04-25 14:09:00

标签: r windows graphics rstudio clipboard

有没有办法让R / RStudio将图表复制到具有自定义尺寸的剪贴板?

RStudio具有此功能,但您必须每次都定义大小,并且有一些额外的点击,我确信这是可以避免的。

我尽力保存为jpeg或file="clipboard",然后 - 绘图后 - dev.off()。没有错误消息,但剪贴板中也没有任何内容。

以下是一个例子:

data(mtcars)
jpeg(file = "clipboard",width = 800, height = 600, units = "px", pointsize = 12,
     quality = 100,
     bg = "white", res = NA, family = "", restoreConsole = T)
hist(mtcars$mpg)
dev.off()

关于如何实现这一目标的任何想法?

2 个答案:

答案 0 :(得分:11)

最好的方法是能够控制Rstudio中的大小,但正如你从Rstudio网站上发现的那样,Rstudio并不支持。以下代码将您的绘图保存到wmf。保存到位图还有一个解决方法,包括点击,但至少你不必再指定大小了:

data(mtcars)
windows(800, 600, pointsize = 12) #opens a separate window with the size you want 
hist(mtcars$mpg) #draw to this (active) window
savePlot("clipboard", type="wmf") #saves plot to WMF

不幸的是,似乎无法将jpg格式保存到剪贴板。您可以通过转到此窗口将其复制到位图,单击CTRL-C,图表位于剪贴板上,位图为800:600。

编辑: windows命令仅适用于Windows 对于 Mac ,它应替换为:quartz(width=8,height=6,pointsize=12,dpi=100)(宽度/高度,以英寸为单位!)

对于 linux ,请尝试x11(width=8,height=6,pointsize=12,dpi=100)(未经测试)。

答案 1 :(得分:1)

使用Windows和RStudio,单击“导出”,单击“将绘图复制到剪贴板”和“复制绘图”。

然后,粘贴到Word或PowerPoint或其他任何内容。

除非您愿意,否则无需更改尺寸。

这不是命令行,但似乎很难。