## ----setup, include = FALSE--------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>", dpi = 300, dev = "png" ) library(gridmicrotex) library(grid) ## ----inline, fig.height = 0.8, fig.width = 6, out.width = "90%"--------------- grid.newpage() grid.markdown( r"(The **fitted** $\hat{\beta} = (X^\top X)^{-1} X^\top y$ has ~~no~~ `se` = *0.42*.)", x = 0.02, hjust = 0, gp = gpar(fontsize = 13) ) ## ----html-css, fig.height = 1.3, fig.width = 6, out.width = "90%", dev = "ragg_png", dev.args = list()---- grid.newpage() grid.markdown( r"(Model fit, serif and mono.

The **residual** for H0 is within $2\sigma$.)", x = 0.02, y = 0.9, hjust = 0, vjust = 1, gp = gpar(fontsize = 13) ) ## ----block, fig.height = 4, fig.width = 4.6, out.width = "80%"---------------- md <- r"( # Model summary The slope is $\beta_1$ with *p* < 0.001, and this paragraph is long enough that it wraps inside the column. ## Diagnostics - residuals look **fine** - $R^2 = 0.87$ - no influential points ~~~r fit <- lm(y ~ x, data = d) # refit if (anyNA(d)) { stop("missing values") } ~~~ > Assumptions were checked and hold. )" grid.newpage() grid.draw(markdown_box_grob( md, width = unit(4.6, "in"), padding = unit(10, "pt"), box_gp = gpar(fill = "grey97", col = "grey40"), gp = gpar(fontsize = 13), style = markdown_style(css = "pre { background: #ece2f0 }") # Code background )) ## ----lists-tables, fig.height = 2, fig.width = 4.4, out.width = "80%"--------- md <- r"( ### Checklist - [x] fit the model - [ ] write it up Coefficients: | term | $\beta$ | *p* | |:-----|------------:|:---:| | intercept | 30.1 | *** | | slope | -5.3 | *** | )" grid.newpage() grid.draw(markdown_box_grob( md, width = unit(4.4, "in"), padding = unit(8, "pt"), gp = gpar(fontsize = 13) )) ## ----image, fig.height = 1.8, fig.width = 4, out.width = "70%"---------------- # Any .png / .jpeg path works; this one ships with the png package. img <- system.file("img", "Rlogo.png", package = "png") md <- sprintf(" A figure with a caption below it. ![the R logo](%s) The caption explains the figure. ", img) grid.newpage() grid.draw(markdown_box_grob( md, width = unit(4, "in"), padding = unit(8, "pt"), gp = gpar(fontsize = 13) )) ## ----style-css, fig.height = 1.2, fig.width = 5, out.width = "85%"------------ doc <- r"( # Results The slope is $\beta_1$ with *p* < 0.001. > Worth a second look. )" grid.newpage() grid.draw(markdown_box_grob( doc, width = unit(4.5, "in"), padding = unit(10, "pt"), style = " h1 { color: steelblue; font-size: 1.8rem } blockquote { color: grey40; border-left: 3px solid steelblue } ", gp = gpar(fontsize = 13) )) ## ----style-r, eval = FALSE---------------------------------------------------- # markdown_style( # h1 = md_style(color = "steelblue", font_size = 1.8), # blockquote = md_style(color = "grey40", # border_left = "3px solid steelblue") # ) ## ----style-preset, eval = FALSE----------------------------------------------- # markdown_style("github", h1 = md_style(color = "firebrick")) # file.show(system.file("css", "github.css", package = "gridmicrotex")) ## ----style-div, fig.height = 1, fig.width = 5, out.width = "85%"-------------- doc <- ' Ordinary text.
**Note.** This chunk is indented and set apart.
Ordinary text again. ' grid.newpage() grid.draw(markdown_box_grob( doc, width = unit(4.5, "in"), padding = unit(10, "pt"), style = ".note { color: grey35; padding-left: 1.5rem }", gp = gpar(fontsize = 13) )) ## ----style-table, fig.height = 2, fig.width = 5, out.width = "85%"------------ tbl <- r"( | Term | Meaning | |:-----|:--------| | $\beta_1$ | the slope, which needs a good deal of room to explain | | $\sigma$ | the residual standard deviation | )" grid.newpage() grid.draw(markdown_box_grob( tbl, width = unit(4, "in"), padding = unit(8, "pt"), style = " table { table-layout: fixed; border-color: #D1D9E0 } th { background: #F6F8FA } tr { border-bottom: 1px solid #D1D9E0 } ", gp = gpar(fontsize = 13) )) ## ----latex-escape, fig.height = 2.4, fig.width = 4.6, out.width = "80%"------- tbl <- r"($$\begin{array}{|l|c|c|}\hline \rowcolor{#F6F8FA}\multicolumn{3}{|c|}{\textbf{Model comparison}}\\\hline \textbf{Model}&\textbf{AIC}&\textbf{R}^2\\\hline \text{linear}&214.3&0.71\\ \cellcolor{#DDF0DD}\text{quadratic}&\cellcolor{#DDF0DD}201.8&\cellcolor{#DDF0DD}0.87\\\hline \end{array}$$)" grid.newpage() grid.draw(markdown_box_grob( paste0("Compare the two fits.\n\n", tbl, "\n\nThe quadratic wins."), width = unit(4.6, "in"), padding = unit(10, "pt"), style = "math { color: #1F3864; font-size: 1.1rem }", gp = gpar(fontsize = 13) )) ## ----degrade, fig.height = 1.5, fig.width = 4.4, out.width = "80%"------------ doc <- r"(A [link](https://example.org) keeps its text, an ![inline diagram](missing.png) becomes its alt text, and an unknown tag keeps its content. Footnotes[^1] land at the foot.
an HTML table is dropped
[^1]: Like this one.)" grid.newpage() grid.draw(markdown_box_grob( doc, width = unit(4.4, "in"), padding = unit(8, "pt"), gp = gpar(fontsize = 13) ))