无法禁用 gridExtra 的 R markdown 输出(附加评论)
Cannot disable R markdown output from gridExtra (additional comment)
在我的 r 降价报告中,我使用了 2 个块。
第一个:
```{r, include = FALSE, echo=FALSE, results='asis'}```
我在哪里加载所有包并进行计算。
第二个
{r, fig.margin = TRUE, fig.width=10,
fig.height=4.5, echo=FALSE, results='asis',
message=FALSE, warning = FALSE}
在我有 for 循环的地方,我在其中过滤我在第一个块中生成的数据,并为每个 i 制作 ggplots。
我的问题是,当我在第二块中制作 2 个图时,我通过 grid.arrange 将它们组合在一个网格中,但是我不想显示其他评论。
TableGrob (2 x 2) "arrange": 2 grobs
z cells name grob
1 1 (1-2,1-1) arrange gtable[layout]
2 2 (1-2,2-2) arrange gtable[layout]
title: "Test"
author: "Maybe It's You"
date: "2016.09.01"
output: pdf_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(grid)
library(gridExtra)
library(ggplot2)
lay <- rbind(c(1,2),
c(1,2))
gs <- list()
```
```{r cars}
summary(cars)
```
## Including Plots
You can also embed plots, for example:
```{r pressure, echo=FALSE, results='asis', message=FALSE, warning = FALSE}
p1 <- qplot(1:10)
p2 <- qplot(1:10)
gs[[1]] <- p1
gs[[2]] <- p2
wykres <- grid.arrange(grobs = gs, layout_matrix = lay)
print(wykres)
```
带有 gridExtra 注释的结果片段(TablGrob...)
不要print()
,grid.arrange()
自己画。如果你想存储结果然后绘制它,使用arrangeGrob()+grid.draw()
该解决方案对我有用,但注意到 R 代码块应该直接 return grid.arrange(),而不是事先存储结果。例如:
这仍将显示 gridExtra 信息(TableGrob 注释):
```{r pressure, echo=FALSE, results='asis', message=FALSE, warning = FALSE}
p1 <- qplot(1:10)
p2 <- qplot(1:10)
gs[[1]] <- p1
gs[[2]] <- p2
wykres <- grid.arrange(grobs = gs, layout_matrix = lay)
return(wykres)
```
这不会显示 gridExtra 信息:
```{r pressure, echo=FALSE, results='asis', message=FALSE, warning = FALSE}
p1 <- qplot(1:10)
p2 <- qplot(1:10)
gs[[1]] <- p1
gs[[2]] <- p2
return(grid.arrange(grobs = gs, layout_matrix = lay))
```
在我的 r 降价报告中,我使用了 2 个块。
第一个:
```{r, include = FALSE, echo=FALSE, results='asis'}```
我在哪里加载所有包并进行计算。
第二个
{r, fig.margin = TRUE, fig.width=10,
fig.height=4.5, echo=FALSE, results='asis',
message=FALSE, warning = FALSE}
在我有 for 循环的地方,我在其中过滤我在第一个块中生成的数据,并为每个 i 制作 ggplots。
我的问题是,当我在第二块中制作 2 个图时,我通过 grid.arrange 将它们组合在一个网格中,但是我不想显示其他评论。
TableGrob (2 x 2) "arrange": 2 grobs
z cells name grob
1 1 (1-2,1-1) arrange gtable[layout]
2 2 (1-2,2-2) arrange gtable[layout]
title: "Test"
author: "Maybe It's You"
date: "2016.09.01"
output: pdf_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(grid)
library(gridExtra)
library(ggplot2)
lay <- rbind(c(1,2),
c(1,2))
gs <- list()
```
```{r cars}
summary(cars)
```
## Including Plots
You can also embed plots, for example:
```{r pressure, echo=FALSE, results='asis', message=FALSE, warning = FALSE}
p1 <- qplot(1:10)
p2 <- qplot(1:10)
gs[[1]] <- p1
gs[[2]] <- p2
wykres <- grid.arrange(grobs = gs, layout_matrix = lay)
print(wykres)
```
带有 gridExtra 注释的结果片段(TablGrob...)
不要print()
,grid.arrange()
自己画。如果你想存储结果然后绘制它,使用arrangeGrob()+grid.draw()
该解决方案对我有用,但注意到 R 代码块应该直接 return grid.arrange(),而不是事先存储结果。例如:
这仍将显示 gridExtra 信息(TableGrob 注释):
```{r pressure, echo=FALSE, results='asis', message=FALSE, warning = FALSE}
p1 <- qplot(1:10)
p2 <- qplot(1:10)
gs[[1]] <- p1
gs[[2]] <- p2
wykres <- grid.arrange(grobs = gs, layout_matrix = lay)
return(wykres)
```
这不会显示 gridExtra 信息:
```{r pressure, echo=FALSE, results='asis', message=FALSE, warning = FALSE}
p1 <- qplot(1:10)
p2 <- qplot(1:10)
gs[[1]] <- p1
gs[[2]] <- p2
return(grid.arrange(grobs = gs, layout_matrix = lay))
```