我有两个数据框dataA
和dataB
,两个数据框都包含time
和value
列。时间列密切相关,但不相同。现在,我用ggplot生成两个图,例如:
plotA <- ggplot(dataA) + geom_line(aes(x = time, y = value))
plotB <- ggplot(dataB) + geom_line(aes(x = time, y = value))
如何使用grid.arrange
或类似函数垂直显示两个图,以便x轴标签和网格线对齐?
答案 0 :(得分:2)
您可以使用构面来对齐图形。
首先,需要合并两个数据集:
dataAB <- rbind(dataA[c("time", "value")], dataB[c("time", "value")])
新列表示原始数据集:
dataAB$ind <- c(rep("A", nrow(dataA)), rep("B", nrow(dataB)))
简介:
library(ggplot2)
ggplot(dataAB) +
geom_line(aes(x = time, y = value)) +
facet_wrap( ~ ind, ncol = 1, scales = "free_y")