【发布时间】:2014-11-06 17:02:22
【问题描述】:
我需要生成一个类似于this 的图形:
基本上,我使用 ggplot 分别生成了 3 个单独的图,我想知道如何将它们组合在一个图中。我想要的安排正是上图中的安排。我已经尝试过 layout() 但我认为它不适用于 ggplot,或者我做错了什么,
我还想在每个图的左上角放置一个标签 a、b、c。
提前致谢
【问题讨论】:
标签: r layout plot ggplot2 figure
我需要生成一个类似于this 的图形:
基本上,我使用 ggplot 分别生成了 3 个单独的图,我想知道如何将它们组合在一个图中。我想要的安排正是上图中的安排。我已经尝试过 layout() 但我认为它不适用于 ggplot,或者我做错了什么,
我还想在每个图的左上角放置一个标签 a、b、c。
提前致谢
【问题讨论】:
标签: r layout plot ggplot2 figure
@Henrik 的链接中有一些很好的答案,但这里有另一个使用用户定义函数multiplot 的解决方案,可以在this webpage 上找到:
library(ggplot2)
##
p1 <- ggplot(
data=mtcars,
aes(x=wt))+
geom_histogram(binwidth=.5)+
ggtitle("(A) Histogram of wt")+
ylab("Frequency")
##
p2 <- ggplot(
data=mtcars,
aes(x=mpg))+
geom_histogram(binwidth=5)+
ggtitle("(B) Histogram of mpg")+
ylab("Frequency")
##
p3 <- ggplot(
data=mtcars,
aes(x=disp))+
geom_histogram(binwidth=50)+
ggtitle("(C) Histogram of disp")+
ylab("Frequency")
##
> multiplot(p1,p2,p3,layout=matrix(c(1,2,1,3),nrow=2))
【讨论】: