gpt4 book ai didi

r - 使代码在单击 R 演示文稿时运行

转载 作者:行者123 更新时间:2023-12-04 19:51:55 24 4
gpt4 key购买 nike

我目前正在使用 Rstudio 的 R 演示功能进行演示。

我有一个算法,可以每隔一两秒循环一次并绘制一个图形。该算法可以通过RunAlgorithm()

调用
RunAlgorithm<-function(){
for(i in 1:10){
x<-rnorm(1000)
y<-runif(1000)
plot(x,y)
Sys.sleep(1)
}
}

我想在演示文稿中展示这个算法的运行。但是当我在文件中使用它时(如下),我只得到每个单独图的整页,一个显示在下一个之后

enter image description here

测试文件.Rpres

    TestFile
========================================================
author: me
date: today

First Slide
========================================================
```{r echo = FALSE}
RunAlgorithm<-function(){
for(i in 1:10){
x<-rnorm(1000)
y<-runif(1000)
plot(x,y)
Sys.sleep(1)
}
}
RunAlgorithm()

```
Slide With Code
========================================================


Slide 2

我想要的是某种方式来单击按钮,或者转到这张幻灯片并在浏览器中播放动画

最佳答案

作为任何 RMarkdown 文档的 R 演示文稿。不是动态的东西,例如。 Shiny 的应用程序。结果是一个静态 html 文件。因此,您需要创建一个可以包含在演示文稿中的动画。这在 Combining R Markdown and Animation Package 中得到了部分回答。但我无法让它为我工作。所以我找到了这个 example .

所以对你来说它看起来像

```{r setup,echo=FALSE}
library(knitr)
opts_knit$set(animation.fun = hook_scianimator)
```

<link rel="stylesheet" href="http://vis.supstat.com//assets/themes/dinky/css/scianimator.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="http://vis.supstat.com/assets/themes/dinky/js/jquery.scianimator.min.js"></script>

TestFile
========================================================
author: me
date: today

First Slide
========================================================
```{r echo = FALSE, fig.show='animate', interval=1}
RunAlgorithm<-function(){
for(i in 1:10){
x<-rnorm(1000)
y<-runif(1000)
plot(x,y)
}
}
RunAlgorithm()
```
Slide With Code
========================================================


Slide 2

编辑:

它也适用于 opts_knit$set(animation.fun = hook_ffmpeg_html) 但不适用于 R-Studio 预览,但仅在您单击更多 -> 另存为网页... 之后。请注意,您必须在路径中安装 ffmpeg。

关于r - 使代码在单击 R 演示文稿时运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35353992/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com