Yes you can do this using arrangeGrob / grid.arrange from gridExtra.
See here
To do this for your example, you'd do
library(ggplot2)
library(gridExtra)
g1 <- qplot(rnorm(10), rnorm(10))
g2 <- qplot(rpois(100, 10), geom = "histogram")
g3 <- qplot(rnorm(10))
my_plots <- list(g1, g2, g3)
my_layout <- rbind(c(1, 1), c(2, 3))
grid.arrange(grobs = my_plots, layout_matrix = my_layout)
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…