Before R 3.0.0, only Sweave/PDF vignettes were supported in R. Markdown is gaining popularity over the years due to its simplicity, and R 3.0.0 starts to support package vignettes written in R Markdown.
Please note this example is for R Markdown v1 only. If you use R Markdown v2, you should use the vignette engine
knitr::rmarkdown
instead ofknitr::knitr
.
To enable Markdown vignettes in an R package, you need to
*.Rmd
files under the vignettes
directoryVignetteBuilder: knitr
to the DESCRIPTION
file\VignetteEngine{knitr::knitr}
in the Rmd
files (inside HTML comments)And R will load the knitr package to build these vignettes to HTML files, and you can see them when you open the HTML help:
help(package = 'YourPackage', help_type = 'html')
# or see a standalone list of vignettes
browseVignettes('YourPackage')
Below are some code chunks as examples.
if (TRUE) cat('_hello_ **markdown**!', '\n')
hello markdown!
Normally you do not need any chunk options.
1+1
#> [1] 2
10:1
#> [1] 10 9 8 7 6 5 4 3 2 1
rnorm(5)^2
#> [1] 1.07060 0.96457 0.11959 0.02761 1.97304
strsplit('hello, markdown vignettes', '')
#> [[1]]
#> [1] "h" "e" "l" "l" "o" "," " " "m" "a" "r" "k" "d" "o" "w" "n" " " "v" "i" "g"
#> [20] "n" "e" "t" "t" "e" "s"
#>
Feel free to draw beautiful plots and write math \(P(X>x)=\alpha/2\).
n=300; set.seed(123)
par(mar=c(4,4,.1,.1))
plot(rnorm(n), rnorm(n), pch=21, cex=5*runif(n), col='white', bg='gray')