我有几个绘制ggplot
的一般函数。现在我想将它们组合成新的图,但不知怎的layout()
不起作用。
我做了这个例子来说明我的观点:
plot_func_1 = function(){
data1 <- data.frame(matrix(c(1:10), ncol=2))
colnames(data1) <- c("name", "value")
ggplot(data = data1) +
geom_boxplot(aes(x = 1, y = value))
}
plot_func_2 = function(){
data2 <- data.frame(matrix(c(11:20), ncol=2))
colnames(data2) <- c("name", "value")
ggplot(data = data2) +
geom_boxplot(aes(x = 1, y = value))
}
plot_func_1_func_2_combined = function(){
mat <- matrix(c(1,2), ncol = 2)
layout(mat, width = c(0.5, 0.5))
plot_func_1()
plot_func_2()
}
plot_func_1_func_2_combined()
plot_func_1_func_2_combined()
应将plot_func_1()
和plot_func_2()
合并到一个图表中。但相反,只显示了第二个图。我怎么能改变它?
其他信息:基本plot
函数似乎不存在此问题,此处可行:
plot_func_1 = function(){
plot(1:5)
}
plot_func_2 = function(){
plot(10:15)
}
plot_func_1_func_2_combined = function(){
mat <- matrix(c(1,2), ncol = 2)
layout(mat, width = c(0.5, 0.5))
plot_func_1()
plot_func_2()
}
plot_func_1_func_2_combined()