3

我想知道是否可以将 flextable/regulartable、ggplot、文本和图像组合成一个网格对象,然后将该网格放入 PowerPoint 幻灯片中?

这对于在幻灯片中安排对象非常有用,而不必总是计算每个对象的坐标。

我看到了一个通过 grid.arrange 组合和排列 ggplot 对象的示例(r - 为什么我不能使用 OfficeR 将网格中的一组图发送到 PowerPoint?)但是如果我还想添加一个 flextable 或者可能是一个新文本段,它不再起作用了。

有没有办法通过网格布局来改进表示层?

谢谢!

4

1 回答 1

5

0.5.3从flextable版本开始就有可能。有很多方法可以实现这一点,这里有一个例子:

library(ggplot2)
library(grid)
library(cowplot)
library(dplyr)
# remotes::install_github("davidgohel/flextable")
library(flextable)

gg1 <- ggplot(iris, aes(Sepal.Length, Petal.Length, color = Species) ) + geom_point()

ft_raster <- iris %>% group_by(Species) %>% 
  summarise_all(median) %>% 
  flextable() %>% autofit() %>% 
  as_raster()

gg2 <- ggplot() + 
  theme_void() + 
  annotation_custom(rasterGrob(ft_raster), xmin=-Inf, xmax=Inf, ymin=-Inf, ymax=Inf)

cowplot::plot_grid(gg1, gg2, nrow = 2, ncol = 1, rel_heights = c(3, 1) )

结果如下

在此处输入图像描述

于 2019-05-06T17:13:29.520 回答