Skip to contents

Although rtables are represented as a tree data structure when outputting the table to ASCII or HTML it is useful to map the rtable to an in between state with the formatted cells in a matrix form.

Usage

matrix_form(
  obj,
  indent_rownames = FALSE,
  expand_newlines = TRUE,
  indent_size = 2
)

# S4 method for MatrixPrintForm
matrix_form(
  obj,
  indent_rownames = FALSE,
  expand_newlines = TRUE,
  indent_size = 2
)

Arguments

obj

ANY. Object to be transformed into a ready-to-render form (a MatrixPrintForm object)

indent_rownames

logical(1), if TRUE the column with the row names in the strings matrix of has indented row names (strings pre-fixed)

expand_newlines

logical(1). Should the matrix form generated expand rows whose values contain newlines into multiple 'physical' rows (as they will appear when rendered into ASCII). Defaults to TRUE

indent_size

numeric(1). Number of spaces to be used per level of indent (if supported by the relevant method). Defaults to 2.

Value

A MatrixPrintForm classed list with the following elements:

strings

The content, as it should be printed, of the top-left material, column headers, row labels, and cell values of tt

spans

The column-span information for each print-string in the strings matrix

aligns

The text alignment for each print-string in the strings matrix

display

Whether each print-string in the strings matrix should be printed or not

.
row_info

the data.frame generated by summarize_rows(tt)

With an additional nrow_header attribute indicating the number of pseudo "rows" the column structure defines.

Details

The strings in the return object are defined as follows: row labels are those determined by summarize_rows and cell values are determined using get_formatted_cells. (Column labels are calculated using a non-exported internal function.