MyNixOS website logo
Description

Docorate (Decorate + Output) Displays.

A framework for creating production outputs. Users can frame a table, listing, or figure with headers and footers and save to an output file. Stores an intermediate 'docorator' object for reproducibility and rendering to multiple output types.

docorator

R-CMD-check status:experimental

{docorator} is an engine for creating production displays from R. Specifically, {docorator} provides the following functionality:

  • Decorate: Surround displays with document-level headers, footers, and page numbers
  • Output: Export decorated displays to a file such as PDF or RTF

The main function, as_docorator() accepts an R object containing the display as input. For best results with sizing, the table should be prepared via {gt}, or packages that interface with {gt} such as {tfrmt}, and the figure should be prepared with {ggplot2}. Alternatively, the path to a PNG can be passed to {docorator}. Specifically, the x should be one of the following:

  • gt table
  • gt_group (list of gt tables)
  • ggplot2 figure
  • list of ggplot figures
  • path to PNG file (i.e. a previously created figure)
  • list of paths to PNG files

The docorator object, which is saved by default, can then be output using one or both of the following render functions which can be piped together: render_pdf() and render_rtf()

Installation

The {docorator} package can be installed from CRAN with:

install.packages("docorator")

The development version of {docorator} can be installed with:

devtools::install_github("GSK-Biostatistics/docorator")

Use

# Load package
library(docorator) 

# Create table (or figure)
mytbl <- gt::exibble |> 
  gt::gt()

# Export display   
mytbl |> 
  as_docorator( 
    display_name = "mytbl",
    header = fancyhead(
      fancyrow(left = "My Study", center = NA, right = doc_pagenum()),
      fancyrow(left = "My Population", center = NA, right = NA),
      fancyrow(left = NA, center = "My Table", right = NA)
    ),
    footer = fancyfoot(
      fancyrow(left = "mypath/mytbl.R", center = NA, right = "Data as of 2025-01-01")
    ) 
  ) |> 
  render_pdf() |>
  render_rtf()

Note

{docorator} requires LaTeX libraries for PDF rendering. If using {tinytex}, the “TinyTeX” bundle covers the core dependencies.

Metadata

Version

0.6.0

License

Unknown

Platforms (80)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    uefi
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-freebsd
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64-uefi
  • aarch64-windows
  • aarch64_be-none
  • arc-linux
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-linux
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • sh4-linux
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-uefi
  • x86_64-windows