recordGraphics {grDevices} | R Documentation |
Records arbitrary code on the graphics engine display list. Useful for encapsulating calculations with graphical output that depends on the calculations. Intended only for expert use.
recordGraphics(expr, list, env)
expr |
object of mode |
list |
a list defining the environment in which |
env |
an |
The code in expr
is evaluated in an environment constructed
from list
, with env
as the parent of that environment.
All three arguments are saved on the graphics engine display list so that on a device resize or copying between devices, the original evaluation environment can be recreated and the code can be re-evaluated to reproduce the graphical output.
The value from evaluating expr
.
This function is not intended for general use. Incorrect or improper use of this function could lead to unintended and/or undesirable results.
An example of acceptable use is querying the current state of a graphics device or graphics system setting and then calling a graphics function.
An example of improper use would be calling the assign
function
to performing assignments in the global environment.
require(graphics)
plot(1:10)
# This rectangle remains 1inch wide when the device is resized
recordGraphics(
{
rect(4, 2,
4 + diff(par("usr")[1:2])/par("pin")[1], 3)
},
list(),
getNamespace("graphics"))