| record | R Documentation |
Run R code and capture various types of output, including text output, plots, messages, warnings, and errors.
record(
code = NULL,
dev = "png",
dev.path = "xfun-record",
dev.ext = dev_ext(dev),
dev.args = list(),
dev.keep = TRUE,
message = TRUE,
warning = TRUE,
error = NA,
cache = list(),
print = record_print,
print.args = list(),
verbose = getOption("xfun.record.verbose", 0),
envir = parent.frame()
)
## S3 method for class 'xfun_record_results'
format(
x,
to = c("text", "markdown", "html"),
encode = FALSE,
template = FALSE,
...
)
## S3 method for class 'xfun_record_results'
print(
x,
browse = interactive(),
to = if (browse) "html" else "text",
template = TRUE,
...
)
code |
A character vector of R source code. |
dev |
A graphics device. It can be a function name, a function, or a character string that can be evaluated to a function to open a graphics device. |
dev.path |
A base file path for plots. Actual plot filenames will be
this base path plus incremental suffixes. For example, if |
dev.ext |
The file extension for plot files. By default, it will be inferred from the first argument of the device function if possible. |
dev.args |
Extra arguments to be passed to the device. The default
arguments are |
dev.keep |
Indices of plots to be kept. The indices can be either
numeric (positive or negative integers) or logical. Negative integers and
false values will remove the corresponding plots. For example, if the code
generated 3 plots, |
message, warning, error |
If |
cache |
A list of options for caching. See the |
print |
A (typically S3) function that takes the value of an expression
in the code as input and returns output. The default is |
print.args |
A list of arguments for the |
verbose |
|
envir |
An environment in which the code is evaluated. |
x |
An object returned by |
to |
The output format (text, markdown, or html). |
encode |
For HTML output, whether to base64 encode plots. |
template |
For HTML output, whether to embed the formatted results in an
HTML template. Alternatively, this argument can take a file path, i.e.,
path to an HTML template that contains the variable |
... |
Currently ignored. |
browse |
Whether to browse the results on an HTML page. |
record() returns a list of the class xfun_record_results that
contains elements with these possible classes: record_source (source
code), record_output (text output), record_plot (plot file paths),
record_message (messages), record_warning (warnings), and
record_error (errors, only when the argument error = TRUE).
The format() method returns a character vector of plain-text output
or HTML code for displaying the results.
The print() method prints the results as plain text or HTML to the
console or displays the HTML page.
code = c("# a warning test", "1:2 + 1:3", "par(mar = c(4, 4, 1, .2))",
"barplot(5:1, col = 2:6, horiz = TRUE)", "head(iris)",
"sunflowerplot(iris[, 3:4], seg.col = 'purple')",
"if (TRUE) {\n message('Hello, xfun::record()!')\n}",
"# throw an error", "1 + 'a'")
res = xfun::record(code, dev.args = list(width = 9, height = 6.75),
error = TRUE)
xfun::tree(res)
format(res)
# find and clean up plot files
plots = Filter(function(x) inherits(x, "record_plot"),
res)
file.remove(unlist(plots))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.