gpt4 book ai didi

r - 如何以程序方式将绘图嵌入到 RMarkdown 的选项卡中?

转载 作者:行者123 更新时间:2023-12-04 11:22:10 24 4
gpt4 key购买 nike

我可以使用 RMarkdown 的 {.tabset} 嵌入绘图

#### Heading  {.tabset}
##### Subheading 1
```{r, echo=F}
df[[1]]
```

这会在预览 Pane 中生成带有指定图形的单个选项卡( df 是图形列表,调用 df[[i]] 会生成图形)(在 RStudio 中内联呈现所有图形)。

我可以使用 for 循环只生成选项卡。
```{r, results='asis', echo = FALSE}
for (i in 1:length(gg0)) {
cat("##### ",q$Subheading[i],"\n")
}
```

这会产生所需的输出 - 具有子标题列中名称的选项卡。

但是,我一直在尝试使用 for 循环自己生成图形,类似于我手动编码时所做的那样。

扩展上述内容,我尝试生成产生初始输出的 Markdown ,但绘图无法生成(在内联 Markdown 和预览中)。
```{r, results='asis', echo = FALSE}
for (i in 1:length(gg0)) {
cat("##### ",q$Subheading[i],"\n")
cat('```{r, echo=F} \n')
cat("gg0[[",i,"]]\n")
cat('``` \n')
}
```

也许我错过了关于 Markdown 的更好点?我用 cat 尝试了各种模式(甚至没有)

我更喜欢 RMarkdown 解决方案,但也欢迎其他解决方案。

最佳答案

我玩了一下,找到了解决方案。您必须使用 printasis 内代码块...

```{r}
library(ggplot2)
gg0 <- list()
gg0[[1]] <- ggplot(mtcars, aes(mpg, hp)) + geom_point()
gg0[[2]] <- ggplot(mtcars, aes(mpg, disp)) + geom_point()
gg0[[3]] <- ggplot(mtcars, aes(mpg, drat)) + geom_point()

headings <- c('hp','disp','drat')
```

#### Heading {.tabset}
```{r, results='asis', echo = FALSE}
for (i in 1:length(gg0)) {
cat("##### ",headings[i],"\n")
print(gg0[[i]])
cat('\n\n')
}
```

作为解释, cat命令与 results='asis'为较低级别的标题生成 Markdown 代码,然后打印 ggplot 图。由于我们在父标题中使用了 `{.tabset},它会在单独的选项卡中创建图表。

关于r - 如何以程序方式将绘图嵌入到 RMarkdown 的选项卡中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43636120/

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