2011-02-18 4 views

답변

2

소스를 구별하는 두 번째 열.

data("economics") 
dat.m <- melt(economics, measure.vars=c("pop", "unemploy")) 

그런 다음 별도의면에서 각 변수를 플롯 facet_grid를 사용 : 예를 들어

ggplot(dat.m, aes(x=date, y=value)) + geom_line() + facet_grid(variable~., scales="free_y") 
1

야후 금융 차트는 시간 창 및 기타 기능을 이동할 수있는, 일반적으로 상호 작용한다. 비슷한 양방향 효과를 얻으려면 googleVis 패키지를 사용하는 것이 좋습니다. 플롯은 웹 브라우저에서 만들어 지므로 상호 작용할 수 있습니다. 시도 :

install.packages("googleVis");library(googleVis);demo(googleVis)

팝업 8 그래프는 시계열의 하나입니다. 그러나 이것은 ggplot이 아닙니다.

0

ggplot2을 사용하는 Ista의 전략 개요는 lattice 패키지를 사용하여 달성 할 수도 있습니다. layout 통해 두 개의 행 및 하나 개의 열을 지정하고 scales 인수하여 별도의 Y 축 스케일 강제

data("economics") 
dat.m <- melt(economics, measure.vars=c("pop", "unemploy")) 

그렇다면 우리 xyplot를 사용 :

xyplot(value~date|variable,data = dat.m, 
    panel = "panel.lines", layout = c(1,2), 
    scales = list(y = list(relation = "free"))) 

enter image description here

6

를 사용하여 동일한 데이터를 사용하여 다른 사람들이 좋은 baseR 솔루션을 언급 한 경제학 데이터 세트.

layout(matrix(1:2, ncol = 1), widths = 1, heights = c(2,1.5), respect = FALSE) 
par(mar = c(0, 4.1, 4.1, 2.1)) 
with(economics, plot(unemploy~date, type = 'l', xaxt = 'n', main = 'My Great Graph')) 
par(mar = c(4.1, 4.1, 0, 2.1)) 
with(economics, plot(pop~date, type = 'l')) 

my great graph

당신은 당신이 아니라 데이터 요소에 분할 기능을 사용하는 것보다 명시 적으로 두 개의 그래프를 만들고있어 전혀 때문에 데이터를 바꿀 필요가 없음을 알게 될 것이다

. 또한 두 그래프는 거의 모든 것이 될 수 있습니다. 두 번째 그래프는 막대 그래프 일 수 있습니다. 또한이 코드에서 원하는 상대 높이를 쉽게 설정할 수 있습니다.

(이 코드는 ggplot2 솔루션보다 훨씬 빠르게 실행됩니다 ... 중요한 점은 웹 사이트 등에서 실시간으로 업데이트하거나 데이터가 많거나 이러한 그래프를 많이 생성해야하는 경우)

관련 문제