ReportCard {teal.reporter}R Documentation

ReportCard: An R6 class for building report elements

Description

[Experimental]

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 or rtables or TableTree or ElementaryTable or listing_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 or grob or trellis) 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) The R code to include.

...

Additional rmarkdown parameters for formatting the R 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⁠) a ReportCard 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())


[Package teal.reporter version 0.3.1 Index]