2013-03-05 2 views
-2

두 데이터 프레임 dataAdataB이 있는데 두 가지 모두 timevalue 열을 포함합니다. 시간 열은 밀접하게 관련되어 있지만 동일하지는 않습니다. 지금, 나는이 ggplot 두 개의 플롯을 생성 예컨대 :R : 서로 다른 x 범위의 플롯 정렬

plotA <- ggplot(dataA) + geom_line(aes(x = time, y = value)) 
plotB <- ggplot(dataB) + geom_line(aes(x = time, y = value)) 

어떻게 grid.arrange 사용하거나 유사한 기능이 수직으로 두 개의 플롯을 표시하고 그래서는 x 축 라벨 및 눈금 선이 정렬?

+2

코드를 재현하시기 바랍니다

dataAB <- rbind(dataA[c("time", "value")], dataB[c("time", "value")]) 

새 열은 원래 데이터 세트를 나타냅니다

첫째, 두 데이터 세트를 결합해야 샘플 데이터를 추가하여 –

+1

This [** post **] (http://stackoverflow.com/questions/13294952/left-align-two-graph-edges-ggplot)가 도움이됩니까? 가능한 복제본처럼 보입니다. – Arun

+0

"시간 열은 밀접하게 관련되어 있지만 동일하지는 않습니다." 저는 플롯 영역이 아닌 값을 정렬하려고합니다. – nccc

답변

2

패싯을 사용하여 플롯을 정렬 할 수 있습니다.

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") 
+0

와우, 내가 기대했던 것보다 훨씬 낫다. 고마워. – nccc