我想使用cowplot将一些图组合在一起.但我不能改变边距大小.我想只使用一个y轴,但是边距仍然很大,我想减少.我已经使用了ggplot中的plot.margin代码,虽然当我查看单个图时它会起作用,但是当这些图组合时它似乎不起作用.
我做了一些示例代码:
library(ggplot2) library(cowplot) x <- c("a", "b") y1 <- c(3,6) y2 <- c(10,15) data1 <- data.frame(x,y1) data2 <- data.frame(x, y2) ylab1 <- ylab("Very nice y values") xlab1 <- xlab("Very nice factors") plot1 <- ggplot(data1, aes(x=x, y = y1)) + geom_bar(stat ="identity", position=position_dodge(), fill = "grey")+ theme(plot.margin = unit(c(0.5,0.5,0.5,0.5), "cm")) + xlab1 + ylab1 plot1 ylab2 <- ylab("") xlab2 <- xlab("Very nice factors") plot2 <- ggplot(data2, aes(x=x, y = y2)) + geom_bar(stat = "identity",position=position_dodge(), fill = "grey")+ theme(plot.margin = unit(c(0.5,0.5,0.5,-0.5), "cm")) + xlab2 + ylab2 plot2 plot3 <- plot_grid(plot1, plot2, labels = c("A", "B"), align = "hv",nrow = 1, ncol = 2) plot3 # Quite large margin between the two plots
我知道我可以通过使用facet来避免这个问题,但是我的真实情节比这个图更复杂.