一、简介
- R Markdown是通过R来书写可重复动态报告的⼀种格式。利⽤它在幻灯⽚、pdf、html⽂档、Word⽂件中嵌⼊R代码和结果。
二、生成中文PDF:
1. 下载软件:
- install.packages("rmarkdown")命令,安装Rmarkdown包。
- Rmarkdown需要借助pandoc进行渲染,Rstudio内置pandoc软件,无需安装。否则,需要安装pandoc软件。
- Tinytex生成PDF文件时需要借助LaTex软件帮助,可以安装Tinytex。输入tinytex::install_tinytex()命令,期间会出现两次错误提示无需理会。安装完成即可。
(1)Pandoc 中文含义:格式转化
- pandoc 是用 haskell 编写的一个 cli 工具,可以支持 docx、epub、html、json、latex、markdow、vimwiki、org、asciidoc 等等格式之间互相转换。pandoc选择的是windows版本,对应的是msi文件。
- pandoc使用小记 - 简书 https://www.jianshu.com/p/0fe173be8052
wget https://github.com/jgm/pandoc/releases/download/2.9.2.1/pandoc-2.9.2.1-windows-x86_64.msi
(2)安装miktex
- 官方页面: https://miktex.org/download(下载basic Miktex)
- LaTeX是一类用于编辑和排版的软件,用于生成PDF文档。
wget https://blog.csdn.net/lotterychampion/java/article/details/70195639https://miktex.org/download/ctan/systems/win32/miktex/setup/windows-x64/basic-miktex-2.9.7417-x64.exe
三、R Markdown语法
1. yaml部分(文件头)
- 放在文件开头部分。用以规定标题、日期、作者、输出格式和一系列相关输出设置。
---
title: "Rmarkdown设置及语法"
author:
- "sudo" #作者信息
- "`r Sys.Date()`" #自动获取当前日期
output:
html_document:
#可以从齿轮-Output Options中设置
css: sspai.css #css模板,定义整个文档的格式,比如一级标题的字体字号等
highlight: tango #代码高亮风格
number_sections: yes #是否自动按节编号
theme: yeti #主题风格
toc: yes #是否自动生成目录
---
2. R代码的初始化设置
- Rmarkdown的初始化设置,或者叫全局设置,可以从代码块的设置中修改全局设置内容。比如说全局设置echo=TRUE,代码块设置中echo=FALSE,则最终echo=FALSE,即文档最终输出中不包括源代码。
```{r setup, include=FALSE}
knitr::opts_chunk$set(eval=TRUE, #在块中运行代码(default = TRUE)
tidy=FALSE, #是否整理代码
prompt=TRUE, #代码是否添加引导符’>‘
highlight=TRUE, #高亮显示源码 (default = TRUE)
comment="Result:", #结果的每一行加前缀(default = ‘##’)
echo=TRUE, #是否在输出中包含源代码
results="markup", #装裱markup、原样asis、隐藏hide、末尾hold
collapse=FALSE,#把所有的输出汇聚到单个块中(default = FALSE)
warning=FALSE,#是否在输出中包含警告(default = TRUE)
error=TRUE, #是否在输出中包含错误信息
message=FALSE, #是否在输出中包含参考的信息
split=FALSE, #是否将R的输出分割成单独的文件
include=TRUE, #运行后是否在文档中显示块 (default = TRUE)
cache = TRUE, #对代码段打开缓存
cache.path="./cache_file/", #缓存结果的保存路径 (default = “cache/”)
# fig.path="figure/prefix-", #图片路径,支持非前缀模式(‘figure/’)
# fig.keep="high", #保存图形类型,高级high、不保存none’)、所有图形(‘all’)、第一张(‘first’)、最后一张(‘last’)
fig.show="asis", #展示方式,紧随代码asis、最后统一hold、动画animate
# fig.width=8, #可以用%表示
# fig.height=6, #图片文件的宽、高(英寸2.54cm 为单位)
# out.width=8,
# out.height=6, #图片在输出文档中的宽、高
fig.align="center" #对齐方式,不做调节(‘default’)、左(‘left’)、右(‘right’)、居中(‘center’)
# interval=1 #动画参数,切换画面时间,单位为秒
)
参考:Rmarkdown代码参数设置 - 简书 https://www.jianshu.com/p/3d9376931953
3.正文
参考:Markdown基本语法 - 简书 https://www.jianshu.com/p/191d1e21f7ed