使用Rmarkdown做自动化报告

R Markdown是通过R来书写可重复动态报告的一种格式。利⽤用它在幻灯⽚片、pdf、html⽂文档、Word⽂文件中嵌⼊入R代码和结果,语法与Markdown一致,下面主要介绍YAML表头及代码块的参数设置

YAML 设置,注意是有缩进的

YAML 语言(发音 /ˈjæməl/ )的设计目标,就是方便人类读写。它实质上是一种通用的数据串行化格式.

它的基本语法规则如下。参考

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进时不允许使用Tab键,只允许使用空格。
  • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
    在Rmarkdown中放在“---”之间
---
title: "标题"
author:"作者"
date:"`r Sys.Date()`"

output:html_document: or pdf_document or word_document
    theme: cerulean      #样式
    highlight: zenburn 
    codefloding:
    number_sections:yes #目录自动编号
    toc:yes          #可对全文档添加目录
    toc_float: True  #目录作为侧边栏
---

嵌入代码的两种方式,及设置输出参数

1.嵌入行内如:`r 1+1`
2.代码块,各种参数请看下面介绍
```{r 参数:值}
plot(iris)
```

设置全局参数opts_chunk$set(echo = FALSE, fig.height = 4)
也可以每个代码块设置参数{r 参数:值}
eval TRUE 是否执行代码,F则原样输出源代码
echo TRUE 是否显示代码,甚至精确控制显示哪几段代码(echo取数值)
warning TRUE 显示警号信息,
error FALSE Whether to display errors
message TRUE Whether to display messages
tidy FALSE 代码重排
highlight TRUE 增强可读性,有无数的高亮主题可选,仅适用于LaTeX和HTML输出
results "markup" "markup", "asis", "hold", or "hide" 普通文本输出或将文本输出以原样形式输出
cache FALSE 选项cache=TRUE来启用缓存,相应的cache.path选项用来设置缓存文件的路径。
comment "##" Comment character to preface results with

out.width和out.height设置图片在输出文档中的宽高
fig.width 7 Width in inches for plots created in chunk
fig.height 7 Height in inches for plots created in chunk
fig.path 用来设置图形输出的路径
fig.keep 设置保留图形的方式
fig.show 设置图形显示的方式
dev 设置用哪种图形设备记录图形
详细看
所有选项可参考官方说明: https://yihui.name/knitr/options/

输出表格样式

knitr::kable(mtcars) #表格
knitr::include_graphics() #读取图片
DT
kableExtra

渲染为PDF 或html docx

rmarkdown::render("<file path>")

交互的report

runtime: shiny 加到YAML中

Choose a time series:
\```{r echo = FALSE}
selectInput("data", "", c("co2", "lh"))
\```
See a plot:
\```{r echo = FALSE}
renderPlot({
 d <- get(input$data)
 plot(d)
})
\```
渲染方式
rmarkdown::run("a.Rmd")

参考链接:
参考卡片 https://www.rstudio.com/wp-content/uploads/2015/02/rmarkdown-cheatsheet.pdf
中文版 https://www.rstudio.com/wp-content/uploads/2015/03/rmarkdown-chinese.pdf

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,186评论 19 139
  • .bat脚本基本命令语法 目录 批处理的常见命令(未列举的命令还比较多,请查阅帮助信息) 1、REM 和 :: 2...
    庆庆庆庆庆阅读 8,270评论 1 19
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,696评论 0 17
  • 一、php可以做什么 php是一种可以在服务器端运行的编程语言,可以运行在Web服务器端。 php是一门后台编程语...
    空谷悠阅读 3,166评论 4 97
  • 【慢点俱乐部】易效能初级学习100天第一阶段 2组-袁小蕾 20171101 心得打卡 【81-90讲理论模块】 ...
    圆圆的毛毛虫阅读 510评论 0 0