ggplot2 - 使用facet_wrap_paginate分离出facet_wrap

标签 ggplot2 facet-wrap ggforce

我以前从未使用过facet_wrap_paginate,也没有找到任何关于如何使用它的好例子。通常我使用facet_wrap,但将其保存为一个图,然后增加高度和宽度。

下面我放了一个我通常用来生成/保存绘图的代码的简单示例。请注意,为了简单起见,这是一个非常精简的版本。

   Draft <- 
   ggplot(aes(x, y) + 
   geom_boxplot() 

   ggsave(plot = Draft, "./Draft.jpeg", width = 15, height = 10, units = "cm")

但是,我想使用facet_wrap_paginate生成一个多页PDF,用于按图分隔。当我运行代码(下面的示例)时,我没有收到任何错误,但无法在任何地方找到输出。

   Draft <- 
   ggplot(aes(x, y) + 
   geom_boxplot() +
   facet_wrap_paginate(~ chemical) 

最佳答案

我的理解是,ggforce::facet_wrap_paginate() 将生成分面子集的单独图。您仍然需要将它们放入 pdf 中。

根据您的描述,您希望在 PDF 文档的不同页面上绘制数据集子集的图。

以下示例说明了如何在四开文档中不使用 facet_wrap_paginate() 来实现此目的。这个想法是将数据集分割成子集,然后用 fig.height 绘制它们,以便每个图占据一页。

---
title: "Untitled"
format: pdf
editor: visual
execute:
  echo: false
  message: false
  warning: false
---

```{r}
library(tidyverse)
```

```{r}
mtcars_cyl_split <- 
  mtcars |> 
  group_by(cyl) |> 
  group_split()
```

```{r}
#| fig-height: 6
walk(mtcars_cyl_split,
    \(x) print(ggplot(x, aes(mpg, disp, group = cyl)) +
  geom_boxplot()))
```

关于ggplot2 - 使用facet_wrap_paginate分离出facet_wrap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77055136/

相关文章:

R向ggplot2等高线图添加图例和直接标签

r - R中的线密度热图

r - ggplot2 - 具有单独图例的facet_wrap

r - facet_zoom 正在放大到不同的 x 轴值

r - ggforce facet_zoom 如何仅注释缩放的图形

r - 在 ggplot2 中创建散点图矩阵(pairs() 等效项)

r - 如何绘制时间序列的互相关矩阵?

r - ggplot2 facet_wrap 与数学表达式

r - ggplot 在多面图上有一些错误。尝试使用多面 ggplot 协调 y 值

r - ggforce geom_circle 锯齿状且难看