forked from rucliyang/RUCbeamer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrucbeamer.Rmd
161 lines (101 loc) · 4.88 KB
/
rucbeamer.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
---
title: "人大Beamer模板"
short-title: "模板" #显示在右下角的小标题
author: "作者"
institute: "机构"
date: "2020年02月24日"
fontsize: 10pt #字号
output: beamer_presentation
---
## 目录
\tableofcontents
# 准备工作
## 模板说明
* 简单来说,这个模板可以实现下面这件事:在Rstudio中使用简洁的markdown语法生成人大主题的beamer。具体过程为:
1. 作者在Rstudio中编写Rmarkdown文件,点击knit按钮。
2. Pandoc将Rmd文件编译成tex文件。
3. LaTeX编译引擎根据tex文件生成beamer。
4. 自动删除编译所需的tex文件以及相关文件,只保留Rmd文件以及最后的beamer。
* 其中需要作者自己做的只有第一步,相比于使用LaTeX写beamer,方便很多。
## 模板说明
* 几乎所有的操作(新建幻灯片、插图、插表等)都可以使用简洁的markdown语法实现。
* 当作者需要进行数学符号的输入时,也可以无缝对接LaTeX语法。
* 可以展示R代码及其运行结果。
* 此外:这个模板使用的是ctex宏包,可以实现较为和谐的中英文混编;背景是人大主题。
## 需要安装软件
* 要使用这一模板,需要安装以下软件:
+ Texlive (为了能编译出beamer)
+ R
+ Rstudio (为了使用 Rmarkdown)
* 此外,在R中还需要安装以下包:
+ knitr (为了编译 Rmarkdown)
+ rticles (支持中文)
+ tinytex (轻量级的LaTeX)
# 常用语法
## 基础语法
* 基本可以使用Markdown语法来编写幻灯片:
+ 最常用的两个指令就是#和##。其中#用于开始一个新的章节,##用于开始一个新的幻灯片。
+ 两段文字之间空一行即可分段。
+ 文字之间的空格不显示,但中文和英文之间会自动留出一个空格,所以不管书写的时候有没有写空格,最终输出结果中中英文之间还是会留白。按照个人书写习惯即可。
## 图
插图很简单,同样沿用markdown语法,比在LaTeX中简洁很多。
插图指令为`![]()`,其中[]中填写图片名称,()中填写图片路径。
例如`![韦恩图](figure/VD.png)`表示在此处插入figure文件夹中
的VD.png图片,并起名为韦恩图。
注意,因为figure跟这个Rmd文件是在同一个文件夹中,所以路径可以简化。如果是想要使用其它文件夹中的图片,需要写完整路径,如`![韦恩图](D:/picture/VD.png)`。
![韦恩图](figure/VD.png)
## 图
上一张幻灯片的图片太大了。我们可以使用
`![韦恩图](figure/VD.png){ width="40%" }`将图片缩小为原来的40%,如下所示。需要注意的是
`width=40%`跟左右大括号之间必须有空格。
![韦恩图](figure/VD.png){ width="40%" }
## 表
在markdown中插入表格比在LaTeX中简单很多。
比如在下面的表格中:第一行表示每一列的名字,用竖线隔开;
第二行表示对齐方式,`:---`是左对齐,`---:`是右对齐,`:---:`是居中对齐。从第三行开始,是具体的数据,每一行表示一个人,每一列表示对应变量的具体取值。
| 姓名 | 性别 | 年龄 |
|:---:|:---:|:----:|
| 张三 | 男 | 21 |
| 小白 | 女 | 20 |
| 王五 | 男 | 45 |
如果表格太长,可以在 [LaTeX Tables Online](https://tablesgenerator.com/) 网站上将
Excel表格转成上述markdown格式,再复制粘贴即可。
## 超链接
要插入超链接,使用`[]()`,其中()中是网址,[]中是超链接的名字。比如 [必应](www.bing.com)。在生成的pdf中点“必应”就可以跳转到对应网址。需要注意[]与左边的文字之间必须要有空格。
## 数学符号
跟LaTeX完全一致,如果需要在句子中插入数学符号或者式子,比如
$x_1$,就左右各用一个美元符号。如果是要空出一行单独显示式子,比如:
$$ x_1+x_2=y $$
就空出一行,并且左右各用两个美元符号。
## 分级标题
在每一页幻灯片中,可以分别用 * + - 生成不同级别的 item,注意缩进,注意符号后要有一个空格,例如:
* 中国
+ 广东
- 广州
- 深圳
+ 湖南
- 长沙
## 分级标题
如果需要枚举,用“数字.”代替上面的 * + - 即可,注意“.”之后要有空格,例如:
* 中国
+ 广东
1. 广州
2. 深圳
+ 湖南
1. 长沙
## R代码及结果
可以在beamer中插入R代码及其运行结果,例如:
```{r echo=TRUE, message=FALSE, warning=FALSE, paged.print=FALSE}
a = 2
a
```
## R代码及结果
值得注意的是,整份Rmd文件中的R代码是有前后顺序的。比如我们在上一页定义a取值为2,在后面的代码中,只要这一变量没有被覆盖定义,这一结果依然有效。例如:
```{r echo=TRUE, message=FALSE, warning=FALSE, paged.print=FALSE}
a+3 # a=2
a^2 # a=2
a = 5 # 重新定义
a
```
## \quad
\center{\LARGE{谢 \quad 谢!}}