首页 > 解决方案 > 是否可以在 r 中使用 ggplot 在绘图区域的角落添加一个小图

问题描述

我希望使用 ggplot2 实现以下绘图配置,其中红色区域是绘图的“主”图,而蓝色区域是完全不同的图,我想将其包含在大致显示的比例中。这两个图表都旨在为方形。

例子

我知道这在 base r 中是可能的,但不知道这对于 ggplot 是否可行。这甚至可能吗?如果是这样,我怎样才能在一个图中获得两个像这样配置的空白图?

标签: rggplot2

解决方案


这是一种gridExtra::grid.arrange方法。您可以layout_matrix根据希望显示的图设置参数;用于NA空格。

library(ggplot2)
library(gridExtra)

# We have two plots which are indexed 1 & 2
# the repeats of values give the space each plot will inhabit
lay = rbind(c(NA,NA,NA,1,1),
            c(NA,NA,NA,1,1),
            c(2,2,2,2,NA),
            c(2,2,2,2,NA),
            c(2,2,2,2,NA),
            c(2,2,2,2,NA))

grid.arrange(ggplot(), ggplot(), layout_matrix=lay)

推荐阅读