写作工作专题

R markdown(中文翻译)

2013-10-20  本文已影响8010人  桃源乡吃桃

原始网页:R markdown


概述

R markdown是R语言运行环境RStudio所使用的扩展的markdown标签语言,能够方便的利用R语言生成web格式的报告。它包括核心的Markdown语法,并能将其中插入的R代码区块的运行结果显示在最终文档里。
R Markdown标签被描述为以下几个部分的集合:

实现

R markdown的实现需要以下两个包:

在RStudio中Knit HTML命令可以将R markdown文件直接渲染成HTML。而实际上Rmd转化到HTML的过程是分两步的,第一步将RStudio的Rmd格式文件编译为markdown格式,第二部将markdown文件转化为HTML文档,其中第二部允许使用其他的markdown渲染程序,如pandoc。若使用其他markdown渲染程序,应使用相应的markdown扩展语法。

标签

在第一部中核心markdown语法和R代码区块是始终有效的。第二部中则使用的是RStudio及其markdown包来转化markdown到HTML。如果使用其他的markdown程序替代,如pandoc,则需要注意其不同的扩展语法。

核心markdown

核心markdown语法通过纯文本格式化命令描述了一系列广泛的文本结构,包括标题、字词强调、有序和无序列表、链接、插图以及行内代码等。R Markdown执行全部的核心markdown语法(两个例外见于下文Sundown扩展项中)。

详细语法描述见于markdown语法定义中。

嵌入R代码

在R Markdown文件中,通过以下方式围栏代码区域从而嵌入代码块:

```{r}
1+1
```

R代码块也可以具有标签并指定处理选项:

```{r md-cars-scatter, message=FALSE, fig.width=7, fig.height=5}
library(ggplot2)
qplot(hp, mpg, data=mtcars)+geom_smooth() 
```

将R表达式紧接在r后并用两反单引号括起,可在行内计算R表达式,如:

I counted `r 1 + 1` red trucks on the highway.

当R代码运行结果被展示在最终的HTML文件中,会出现对比的背景色和语法高亮。R代码的原文本也会被被显示在方框中。

Sundown 扩展

RStudio的markdown包使用Sundown库将markdown渲染为HTML。Sundown支持核心markdown,Github flavored markdown的一系列扩展,以及若干附加的扩展语法。

Github flavored markdown扩展语法包括以下:

附加的扩展语法包括:

最后,一下ASCII字符序列会被转化为印刷体的HTML实体字符:

LaTeX和MathML公式

用以下语法插入LaTeX和MathML公式:

关于插入公式更详细的信息见文章Equations in R Markdown中。

打包图像

当markdown被转化为HTML时,文件中用相应超文本指定的图像将直接被打包进最终生成的HTML文件中。这个过程产生一个独立的web页面,在分享时不需要再打包任何其他附件文件。可以将生成的HTML文件作为邮件附件,在公共文件夹中分享,或者在web服务中将其配置成单独的HTML文件。

打包图像的过程是基于base64编码图像,然后使用data URI插入被编码的图像。

文本编码

Sundown库使用UTF-8编码读写文本内容。因此将UTF-8作为Rmd文件的编码是最方便的。RStudio也支持其他的编码(在利用Sundown渲染之前RStudio会将其他编码转化为UTF-8),然而如果直接使用markdown包则需要提前手动完成编码的转化。

相关主题

上一篇下一篇

猜你喜欢

热点阅读