r语言中which的使用_使用R语言制作幻灯片

1 用R 做幻灯片?这是什么操作?

简单来说, 使用R做幻灯片有如下优势:

首先,用R制作幻灯片可以让你的幻灯片变得可再生(reproducible)。报告所用的幻灯片都是用Rmarkdown即时生成的,如果统计结果有修改,那么你的幻灯片会根据你的统计结果自动进行变化,不需要再进行额外的复制粘贴工作,也就不会再有“这是个复制粘贴的错误”的尴尬。

其次,使用R制作幻灯片可以无缝衔接R本身自带的强大画图功能,从而呈现出更好的图片报告效果。比如可以整合plotly 安装包呈现可交互的图片。而这些效果在PPT上很难实现。

另外,可以在幻灯片上直接呈现分析的过程和R代码-- 即直接给观众呈现你数据分析的过程,让你的报告条例更透明和清晰。

最后,各位同学多少都遇到过某些PPT版本不兼容导致PPT无法打开的尴尬,而使用R制作的幻灯片就不会出现这种情况。你甚至可以将生成的文件脱离R语言进行呈现,只要所呈现的电脑有浏览器就行。

当然,它跟PPT相比主要的劣势在于美化和排版。实现平面设计级别的美化和排版可能在PPT上只需要拖动鼠标或者点击即可,而使用R来完成这些工作,你需要懂得html以及懂得编写CSS。但是现在已经有相应的幻灯片主题安装包可供选择,本文也将就如何对R制作出的幻灯片进行美化提供建议。

今天我们就来手把手教大家如何使用R制作幻灯片

2 准备工作

2.1 下载并安装R markdown,xaringan

直接在R-studio的命令行中使用install.packages (rmarkdown),以及install.packages(xaringan) 即可。

2.2 调出模板

在R-studio的左上角点击File-> New File -> R Markdown,R-studio会弹出如下界面:

cb5081e346eef4d776a52a21c8509288.png

在这个界面中选择 from Template, 会呈现如下界面:

cc5dcfa0276ac1825531a74a3d1d9ad6.png

可以看到Template中的第一行Ninja Presentation (simplified Chinese,因为这个包的作者就是中国人,谢益辉,所以很友好的提供了中文支持)。如果你选择纯英文报告,点击下方的NinjaPresentation ,再点击OK即可。然后会看到如下界面:

f1542eb4290bc555b6da0899c991fa11.png

这就是用来生成幻灯片文件的Rmarkdown文件了。以上代码是作者制作幻灯片的示例代码,我们在自己制作幻灯片时,可以将“background-image”之后的内容全部删除,同时修改title, subtitle 和author。接下来我将从头制作一个示例幻灯片。

3 幻灯片的制作

3.1 全局参数

删掉黄线以下内容之后,我们首先要设置一些全局参数(比如小数点保留几位)

我们可以点击右上角的“insert”-> “R” 来插入一个R 的代码块。在小写r附近(被称为inline R)输入 include=FALSE,意思是不在幻灯片中呈现本R代码块的运行结果和代码。接下来再下方输入 options(digits= 2), 意为幻灯片呈现的所有数据保留两位小数。

具体代码如下图:

a1e9e24d27740384712485fd84d7b8b2.png

3.2 标题, 正文以及分页符

接下来我们可以输入标题,我们可以通过输入“#”的个数来控制标题的级数。

例如

# 一级标题

## 二级标题

### 三级标题

输入标题之后,可在直接标题下方输入正文部分。如果想对正文进行缩进处理,可以输入三个“` ”(主键盘数字1左边的按键),即可用空格键进行缩进。但在输入完文本之后,需要再起一行输入三个“` ” 表示文本输入结束。

如果我们想完成对当前页的编辑而转向下一页的编辑,可以另起一行加入分页符“---”。

上述代码如下图:

124320bfcad69a264af39307fb2965cd.png

3.3 图片的插入

使用如下命令即可插入图片 “![可以随便输入任何内容](文件路径)”,此时被插入的图片和该Rmarkdown文件在一个文件夹之内,所以直接输入文件名即可。

代码如下图:

bc473002fcb5a4d32c8722996e9def1e.png

3.4 居中, 背景颜色以及渐进显示

使用“.center[需要居中的内容]”即可完成居中操作。同理”.left[]” 和“.right[]分别为左对齐和右对齐”。

0dcec49b9c37a43113b13b575b21dc8f.png

若要快速修改当前主题的背景颜色,可以在分页符下方输入class 参数,然后输入inverse 即可。

具体代码如下:

30adf95fa3d05a13852d980ef4e70683.png

若想实现类似PPT中每点击一次鼠标显示部分文本的功能。可以在需要渐进显示的文本之间加入“--”进行间隔,具体代码如下:

461b936a3a60fb4c55ad24f4dac44abf.png

4 整合R代码块

4.1 工作空间及inline R code的设置

接下来我们将开始整合数据分析到已有的幻灯片当中,但在进行数据导入和分析之前要注意工作空间的设置。尽量把数据文件和幻灯片生成文件放到一个文件夹下,这样就不需要修改工作空间了,否则在Rmarkdown中修改工作空间地址会造成很多不可预知的后果。由于我们在这里要开始报告R代码的统计结果,我们在inline R code设置中使用echo=FALSE,即只报告代码结果而不显示代码。

具体代码如下:

f29536577df64a7bd2c5dcc7d1bcbd1f.png

4.2 引用R的输出结果

接下来我们来计算不同性别在变量”before”上的平均数并报告出来。首先我们使用前两期提到的ddply功能进行分组统计,求每个性别的人数和在“before”变量上的平均数并赋值给数据框result。然后在文本中使用`r result$mrt[1]`来显示女性的平均数。具体代码如下:

fc99106d28085a407345517305e48130.png

4.3 输出可交互的图片

在前两期的栏目中,我们介绍了如何使用R作Error bar图,这次我们将在图中加入可交互的效果,即鼠标停留在图上可显示具体数值,这一功能通过plotly包中的ggploty实现。具体代码和效果如下:

fa6f87c4abf894692961041f0ef360f2.png

3ea24eb0cd71b4e8d329fa5ab3bff6d1.png

这样一个幻灯片示例就编写完成了,各位同学可以根据自己的需要进行修改,然后点击下图中的knit 即可生成一个网页版的幻灯片。当幻灯片自动弹出后,可点击open in browser,然后把网页最大化,接着按一下键盘上的F键,就可以开始进行报告啦(进入幻灯片状态之后的操作同PPT一样)

最后放上这次demo的动图:

8c0780c64ea162c1aafdbb754ea4a98d.gif

最后,关于幻灯片的美化,有兴趣的同学可以使用xaringan自带的主题(目前仍在不断扩充之中),Github链接如下: 

https://github.com/yihui/xaringan/wiki/Themes

或者使用另一个安装包xaringan themer进行主题定制。该安装包的Github链接如下:

https://github.com/gadenbuie/xaringanthemer

有兴趣的同学也可以关注谢益辉大神本人的官方网页:

https://yihui.name/cn/

后台回复slides 获取本期示例代码

如果有对R作图(特别是error bar)相关的知识感兴趣的同学也可以移步: 常用R作图代码示例

参考文献:

Xie, Y., Allaire, J. J., & Grolemund, G.(2018). R markdown: The definitive guide. CRC Press.

7969dd6b1c060e64884785b252147069.png

----

欢迎关注我们

一个专注于心理学及管理学领域统计方法(复杂模型Mplus及R软件的应用)及英文写作的公众号

----

另如果涉及统计及代码问题,请在文章下方留言或邮寄。公众号回复48小时就无法回复了。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值