R 是否有可能使图形打印像ggplot一样可移植?

R 是否有可能使图形打印像ggplot一样可移植?,r,ggplot2,R,Ggplot2,是否可以像ggplot绘图可移植一样,使基本图形库绘图可移植?也就是说,您可以将绘图传递给各种函数并调用print(plot),而不会遇到错误。这对函数recordPlot()和replayPlot()执行类似的操作,但与此不同。一个区别是,与ggplot2和lattice图形不同,图形必须先打印到图形设备,然后才能记录 # Plot and then record a figure plot(rnorm(99)) recPlot <- recordPlot() dev.off() #

是否可以像ggplot绘图可移植一样,使基本图形库绘图可移植?也就是说,您可以将绘图传递给各种函数并调用print(plot),而不会遇到错误。

这对函数
recordPlot()
replayPlot()
执行类似的操作,但与此不同。一个区别是,与
ggplot2
lattice
图形不同,图形必须先打印到图形设备,然后才能记录

# Plot and then record a figure
plot(rnorm(99))
recPlot <- recordPlot()
dev.off()

# Plot recorded figure to default graphics device
replayPlot(recPlot)

# Plot recorded figure to the pdf graphics device
pdf("eg.pdf")
replayPlot(recPlot)
dev.off()

# Look at the data structure that stores the plot
str(rPlot)
#绘制并记录图形
绘图(rnorm(99))

很酷!有没有一个简单的机制可以在记录情节后应用“主题”?例如,假设我想在录制/捕获后更改情节的字体。我强烈的印象/回忆是没有,没有。我会很感兴趣,如果有人插话与矛盾的信息,因为这将是很好的。但我认为这些函数的设计并没有考虑到这种用途,典型的建议是保存和编辑文本源代码。正如Josh所说,基本图形并不是专门为此而设计的。但是,您可以尝试使用晶格图;它们确实返回可以操纵和传递的对象。问题不在于我自己创建的图(我使用ggplot),而是由CRAN上的各种库创建的图。这些函数非常有用,但不幸的是,它们是使用图形实现的,而不是ggplot或Lattice。在这种情况下,最好的方法如下所示。与其创建绘图然后尝试修改它,不如获取用于生成绘图的代码并进行修改,然后运行它以生成新绘图。