r - 在 ggplot2 中插入图像作为构面

标签 r ggplot2

我正在使用 ggplot2在函数中生成分面图(即分面数量不同)。对于我制作的每个图,我想在最后的自由面中插入一个图像(例如导入的 jpg )(即 ggplot2 必须以预见的方式计算 facet_wrap 设计存在一个额外的方面,但此方面之后将填充一个非 ggplot2 图像)。这是一个多面图的 MWE,在这种情况下,我想插入一个图像作为第四个方面:

p <- ggplot(mtcars, aes(wt, mpg))
p + geom_point() + facet_wrap(~cyl, ncol = 2)

在此先感谢您的所有建议!

最佳答案

library(ggplot2)
library(png)

img <- readPNG(system.file("img", "Rlogo.png", package="png"))

p <- ggplot(mtcars, aes(wt, mpg)) + geom_point() + 
  facet_wrap(~cyl, ncol = 2)

g <- ggplotGrob(p)
library(gtable)
g <- gtable_add_grob(g, rasterGrob(img), nrow(g)-4, ncol(g)-2)
grid.newpage()
grid.draw(g)

关于r - 在 ggplot2 中插入图像作为构面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23582084/

相关文章:

r - 通过 R 中的水管工 API 上传多个文件

r - 用 rmarkdown 编号一些部分

r - 如何在R中组合多个图?

r - 如何将 ggplot 对象向量传递给 grid.arrange 函数?

r - "gam"插入符号模型不返回fitting.values

r - 如何根据 R 中所需的图形大小来控制图形中的字体大小?

r - 将时间(以小时为单位)从数字格式转换为 HMS 格式

r - 在 ggplot2 中绘制矩形 - 无效输入 : time_trans works with objects of class POSIXct only

r - 如何将碎石图比例设置为与主成分相同?

r - 在 ggplot 和分割(分支)线中堆叠两个水平的因子