ReportCard {teal.reporter} | R Documentation |
ReportCard
: An R6
class for building report elements
Description
This R6
class that supports creating a report card containing text, plot, table and
metadata blocks that can be appended and rendered to form a report output from a shiny
app.
Methods
Public methods
Method new()
Initialize a ReportCard
object.
Usage
ReportCard$new()
Returns
Object of class ReportCard
, invisibly.
Examples
card <- ReportCard$new()
Method append_table()
Appends a table to this ReportCard
.
Usage
ReportCard$append_table(table)
Arguments
table
A (
data.frame
orrtables
orTableTree
orElementaryTable
orlisting_df
) that can be coerced into a table.
Returns
self
, invisibly.
Examples
card <- ReportCard$new()$append_table(iris)
Method append_plot()
Appends a plot to this ReportCard
.
Usage
ReportCard$append_plot(plot, dim = NULL)
Arguments
plot
(
ggplot
orgrob
ortrellis
) plot object.dim
(
numeric(2)
) width and height in pixels.
Returns
self
, invisibly.
Examples
library(ggplot2) card <- ReportCard$new()$append_plot( ggplot(iris, aes(x = Petal.Length)) + geom_histogram() )
Method append_text()
Appends a text paragraph to this ReportCard
.
Usage
ReportCard$append_text(text, style = TextBlock$new()$get_available_styles()[1])
Arguments
text
(
character
) The text content to add.style
(
character(1)
) the style of the paragraph. One of:default
,header
,verbatim
Returns
self
, invisibly.
Examples
card <- ReportCard$new()$append_text("A paragraph of default text")
Method append_rcode()
Appends an R
code chunk to ReportCard
.
Usage
ReportCard$append_rcode(text, ...)
Arguments
text
(
character
) TheR
code to include....
Additional
rmarkdown
parameters for formatting theR
code chunk.
Returns
self
, invisibly.
Examples
card <- ReportCard$new()$append_rcode("2+2", echo = FALSE)
Method append_content()
Appends a generic ContentBlock
to this ReportCard
.
Usage
ReportCard$append_content(content)
Arguments
content
(
ContentBlock
) object.
Returns
self
, invisibly.
Examples
NewpageBlock <- getFromNamespace("NewpageBlock", "teal.reporter") card <- ReportCard$new()$append_content(NewpageBlock$new())
Method get_content()
Get all content blocks from this ReportCard
.
Usage
ReportCard$get_content()
Returns
list()
list of TableBlock
, TextBlock
and PictureBlock
.
Examples
card <- ReportCard$new()$append_text("Some text")$append_metadata("rc", "a <- 2 + 2") card$get_content()
Method reset()
Clears all content and metadata from ReportCard
.
Usage
ReportCard$reset()
Returns
self
, invisibly.
Method get_metadata()
Get the metadata associated with ReportCard
.
Usage
ReportCard$get_metadata()
Returns
named list
list of elements.
Examples
card <- ReportCard$new()$append_text("Some text")$append_metadata("rc", "a <- 2 + 2") card$get_metadata()
Method append_metadata()
Appends metadata to this ReportCard
.
Usage
ReportCard$append_metadata(key, value)
Arguments
key
(
character(1)
) string specifying the metadata key.value
value associated with the metadata key.
Returns
self
, invisibly.
Examples
library(ggplot2) card <- ReportCard$new()$append_text("Some text")$append_plot( ggplot(iris, aes(x = Petal.Length)) + geom_histogram() )$append_text("Some text")$append_metadata(key = "lm", value = lm(Ozone ~ Solar.R, airquality)) card$get_content() card$get_metadata()
Method get_name()
Get the name of the ReportCard
.
Usage
ReportCard$get_name()
Returns
character
a card name.
Examples
ReportCard$new()$set_name("NAME")$get_name()
Method set_name()
Set the name of the ReportCard
.
Usage
ReportCard$set_name(name)
Arguments
name
(
character(1)
) a card name.
Returns
self
, invisibly.
Examples
ReportCard$new()$set_name("NAME")$get_name()
Method to_list()
Convert the ReportCard
to a list, including content and metadata.
Usage
ReportCard$to_list(output_dir)
Arguments
output_dir
(
character
) with a path to the directory where files will be copied.
Returns
(named list
) a ReportCard
representation.
Examples
library(ggplot2) card <- ReportCard$new()$append_text("Some text")$append_plot( ggplot(iris, aes(x = Petal.Length)) + geom_histogram() )$append_text("Some text")$append_metadata(key = "lm", value = lm(Ozone ~ Solar.R, airquality)) card$get_content() card$to_list(tempdir())
Method from_list()
Reconstructs the ReportCard
from a list representation.
Usage
ReportCard$from_list(card, output_dir)
Arguments
card
(
named list
) aReportCard
representation.output_dir
(
character
) with a path to the directory where a file will be copied.
Returns
self
, invisibly.
Examples
library(ggplot2) card <- ReportCard$new()$append_text("Some text")$append_plot( ggplot(iris, aes(x = Petal.Length)) + geom_histogram() )$append_text("Some text")$append_metadata(key = "lm", value = lm(Ozone ~ Solar.R, airquality)) card$get_content() ReportCard$new()$from_list(card$to_list(tempdir()), tempdir())
Method clone()
The objects of this class are cloneable with this method.
Usage
ReportCard$clone(deep = FALSE)
Arguments
deep
Whether to make a deep clone.
Examples
## ------------------------------------------------
## Method `ReportCard$new`
## ------------------------------------------------
card <- ReportCard$new()
## ------------------------------------------------
## Method `ReportCard$append_table`
## ------------------------------------------------
card <- ReportCard$new()$append_table(iris)
## ------------------------------------------------
## Method `ReportCard$append_plot`
## ------------------------------------------------
library(ggplot2)
card <- ReportCard$new()$append_plot(
ggplot(iris, aes(x = Petal.Length)) + geom_histogram()
)
## ------------------------------------------------
## Method `ReportCard$append_text`
## ------------------------------------------------
card <- ReportCard$new()$append_text("A paragraph of default text")
## ------------------------------------------------
## Method `ReportCard$append_rcode`
## ------------------------------------------------
card <- ReportCard$new()$append_rcode("2+2", echo = FALSE)
## ------------------------------------------------
## Method `ReportCard$append_content`
## ------------------------------------------------
NewpageBlock <- getFromNamespace("NewpageBlock", "teal.reporter")
card <- ReportCard$new()$append_content(NewpageBlock$new())
## ------------------------------------------------
## Method `ReportCard$get_content`
## ------------------------------------------------
card <- ReportCard$new()$append_text("Some text")$append_metadata("rc", "a <- 2 + 2")
card$get_content()
## ------------------------------------------------
## Method `ReportCard$get_metadata`
## ------------------------------------------------
card <- ReportCard$new()$append_text("Some text")$append_metadata("rc", "a <- 2 + 2")
card$get_metadata()
## ------------------------------------------------
## Method `ReportCard$append_metadata`
## ------------------------------------------------
library(ggplot2)
card <- ReportCard$new()$append_text("Some text")$append_plot(
ggplot(iris, aes(x = Petal.Length)) + geom_histogram()
)$append_text("Some text")$append_metadata(key = "lm",
value = lm(Ozone ~ Solar.R, airquality))
card$get_content()
card$get_metadata()
## ------------------------------------------------
## Method `ReportCard$get_name`
## ------------------------------------------------
ReportCard$new()$set_name("NAME")$get_name()
## ------------------------------------------------
## Method `ReportCard$set_name`
## ------------------------------------------------
ReportCard$new()$set_name("NAME")$get_name()
## ------------------------------------------------
## Method `ReportCard$to_list`
## ------------------------------------------------
library(ggplot2)
card <- ReportCard$new()$append_text("Some text")$append_plot(
ggplot(iris, aes(x = Petal.Length)) + geom_histogram()
)$append_text("Some text")$append_metadata(key = "lm",
value = lm(Ozone ~ Solar.R, airquality))
card$get_content()
card$to_list(tempdir())
## ------------------------------------------------
## Method `ReportCard$from_list`
## ------------------------------------------------
library(ggplot2)
card <- ReportCard$new()$append_text("Some text")$append_plot(
ggplot(iris, aes(x = Petal.Length)) + geom_histogram()
)$append_text("Some text")$append_metadata(key = "lm",
value = lm(Ozone ~ Solar.R, airquality))
card$get_content()
ReportCard$new()$from_list(card$to_list(tempdir()), tempdir())