Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Branding and Packaging Reports with R Markdown

Branding and Packaging Reports with R Markdown

Create custom R Markdown templates and {ggplot2} themes, then package them up to distribute.

Avatar for Jake Thompson

Jake Thompson

January 30, 2020
Tweet

More Decks by Jake Thompson

Other Decks in Programming

Transcript

  1. Branding and Packaging Reports with R Markdown wjakethompson bit.ly/ratlas-rstudioconf wjakethompson.com

    @wjakethompson Jake Thompson, PhD University of Kansas Accessible Teaching, Learning, and Assessment Systems 2020-01-30 • rstudio::conf(2020)
  2. Noelle Pablo Assistant Psychometrician University of Kansas, ATLAS @noelle_pablo noellepablo

    Jeff Hoover Graduate Research Assistant University of Kansas, ATLAS @JeffreyCHoover JeffreyCHoover bit.ly/ratlas-rstudioconf
  3. Building a Word Template 1. Start writing document in R

    Markdown. bit.ly/ratlas-rstudioconf
  4. Building a Word Template 1. Start writing document in R

    Markdown. 2. Knit your document. bit.ly/ratlas-rstudioconf
  5. Building a Word Template 1. Start writing document in R

    Markdown. 2. Knit your document. 3. Style and save your word document. bit.ly/ratlas-rstudioconf
  6. Building a Word Template 1. Start writing document in R

    Markdown. 2. Knit your document. 3. Style and save your word document. 4. Define your template in your YAML. bit.ly/ratlas-rstudioconf
  7. Resources! • Branding and Automating with R Markdown - Daniel

    Hadley • Happy Collaboration with Rmd to docx - Richard Layton • R Markdown: The Definitive Guide - Yuihui Xie, J. J. Allair, Garrett Grolemund bit.ly/ratlas-rstudioconf
  8. Step 3: Polish • Custom {ggplot2} themes • {hrbrthemes} -

    Bob Rudis • {Rtistic} - Emily Riederer • {bbplot} - BBC • Default {knitr} chunks • {knitr} options guide bit.ly/ratlas-rstudioconf
  9. What Next? Copy and paste into each project • Templates

    • {ggplot2} themes • Other settings Wrap it up in an R package! • Always have the right version • Easy to distribute • Documentation included bit.ly/ratlas-rstudioconf
  10. Use Case: ratlas • Templates for reports • Convenient project

    templates • {ggplot2} themes • Vignettes! bit.ly/ratlas-rstudioconf
  11. Package Structure ratlas |-- DESCRIPTION |-- inst | |-- rmarkdown

    | |-- rstudio |-- man |-- NAMESPACE |-- R |-- README.md |-- tests |-- vignettes bit.ly/ratlas-rstudioconf
  12. inst/rmarkdown/ ratlas |-- inst | |-- rmarkdown | |-- templates

    | |-- topicguide | |-- resources | |-- template.docx | |-- techreport | |-- resources | |-- template.tex bit.ly/ratlas-rstudioconf
  13. R/render.R topicguide_docx <- function(...) { template <- system.file("rmarkdown", "templates", "topicguide",

    "template.docx") base <- bookdown::word_document2(reference_docx = template, ...) base$knitr$opts_chunk$echo <- FALSE base$knitr$opts_chunk$fig.asp <- 0.618 base } bit.ly/ratlas-rstudioconf
  14. inst/rstudio/ ratlas |-- inst | |-- rstudio | |-- templates

    | |-- project | |-- topicguide.dcf | |-- topicguide_resources | |-- index.Rmd | |-- references.bib bit.ly/ratlas-rstudioconf
  15. Other Examples! • sorensonimpact • Sorenson Impact Center • Jonathan

    Zadra, Daniel Hadley, & Gwendolyn Reynolds • thesisdown • Reed College (with many forks) • Chester Ismay • rticles • Journal LaTeX templates • J. J. Allaire, Yihui Xie, R Foundation, et al. bit.ly/ratlas-rstudioconf