recordPlot
位于 grDevices
包(package)。 说明
将当前绘图保存在R变量,并重播它。
用法
recordPlot(load=NULL, attach=NULL)
replayPlot(x, reloadPkgs=FALSE)
参数
load |
如果不是 |
attach |
如果不是 |
x |
已保存的情节。 |
reloadPkgs |
指示是否重新加载和/或重新附加作为记录图的一部分保存的任何包的逻辑。 |
细节
这些函数记录并重放当前图形设备的显示列表。返回的对象属于 "recordedplot"
类,而 replayPlot
充当该类的 print
方法。
返回的对象存储为对列表,但通常的检查方法R对象如deparse
和str
容易产生误导。
值
recordPlot
返回类 "recordedplot"
的对象。
replayPlot
没有返回值。
警告
记录图的格式可能会改变R版本,所以记录的情节应该不是用作永久存储格式R地块。
作为R3.3.0,可以(再次)重播另一个情节R会话使用,例如,saveRDS
和readRDS
。甚至可以重播另一个情节R但是,这会产生警告,可能会产生错误,或更糟糕的情况。
注意
如果显示列表包含对 recordGraphics
的调用,而 recordGraphics
又包含从 graphics or grid
以外的非基本包调用代码的表达式,则重放记录的绘图可能不会产生正确的结果(或者可能会失败)。最著名的例子是使用 ggplot2
包绘制的图。一种解决方案是在重播记录的绘图之前加载相关包。 recordPlot
的 load
和 attach
参数可用于自动执行此操作。 load
中命名的任何包都将通过 loadNamespace
重新加载;并且只要在 replayPlot
调用中 reloadPkgs
是 TRUE
,任何在 attach
中命名的包都将通过 library
重新附加。仅当尝试在一个 R 会话中重播在不同 R 会话中记录的绘图时,这才有意义。
参考
Murrell, P., Ooms, J., Allaire, J.J. (2015), "Recording and Replaying the Graphics Engine Display List", https://stattech.wordpress.fos.auckland.ac.nz/2015/12/21/2015-07-recording-and-replaying-the-graphics-engine-display-list/
也可以看看
可以使用 dev.control
打开和关闭显示列表。最初记录对于屏幕设备是打开的,对于打印设备是关闭的。
相关用法
- R recordGraphics 记录图形操作
- R rgb RGB 颜色规格
- R rgb2hsv RGB 到 HSV 转换
- R axisTicks 计算漂亮的轴刻度
- R hcl HCL 颜色规格
- R quartzFonts 石英字体
- R as.graphicsAnnot 强制图形注释对象
- R xyTable (x,y) 点的重数,例如,对于向日葵图
- R dev.interactive 当前图形设备是否具有交互性?
- R chull 计算一组点的凸包
- R convertColor 在色彩空间之间转换
- R X11Fonts X11 字体
- R plotmath R 中的数学注释
- R dev.capture 将设备输出捕获为光栅图像
- R dev.size 查找设备表面的尺寸
- R pdf.options 设置/查看 pdf 参数默认值的辅助函数
- R densCols 平滑密度图的颜色
- R windows Windows 图形设备
- R check.options 设置带有一致性检查的选项
- R msgWindow 操纵窗口
- R dev.flush 保持或刷新屏幕图形设备上的输出
- R n2mfrow 根据绘图数计算默认“mfrow”
- R dev 控制多个设备
- R hsv HSV 颜色规格
- R postscript PostScript 图形
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Record and Replay Plots。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。