2013-05-19 1 views
1

12 개의 용어가있는 변수에 따라 플롯을 인쇄하려고합니다. 이 플롯은 OM 거리를 사용하여 시퀀스에 대한 클러스터 분류의 결과입니다.2 pdf 페이지의 변수 조건에 따른 인쇄 플롯

나는 하나의 PDF 페이지에서이 플롯 인쇄 :

pdf("YYY.pdf", height=11,width=20) 
seqIplot(XXX.seq, group=XXX$variable, cex.legend = 2, cex.plot = 1.5, border = NA, sortv =XXX.om) 
dev.off() 

을하지만 인쇄는 작은 것입니다 ... 그래서 내가 이렇게,이 페이지에서이 작업을 인쇄하려고 :

pdf("YYY.pdf", height=11,width=20) 
seqIplot(XXX.seq, group=XXX$variable, variable="1":"6", cex.legend = 2, cex.plot = 1.5, border = NA, sortv =XXX.om) 
seqIplot(XXX.seq, group=XXX$variable, variable="7":"12", cex.legend = 2, cex.plot = 1.5, border = NA, sortv = XXX.om) 
dev.off() 

그러나 그것은 작동하지 않습니다 ... 당신은 PDF 파일 페이지 당 6 그래픽을 인쇄 할 수 있도록 용어의 변수를 두 그룹으로 분리하도록 R에게 어떻게 요청할 수 있는지 알고 있습니까?

답변

2

해결 방법은 각 페이지에 원하는 그룹의 하위 집합을 개별적으로 플롯하는 것입니다. 다음은 TraMineR으로 제공되는 biofam 데이터를 사용한 예입니다. 그룹 변수 p02r04은 10 가지 값을 갖는 종교적 참여입니다.

library(TraMineR) 
data(biofam) 
bs <- seqdef(biofam[,10:25]) 
group <- factor(biofam$p02r04) 
lv <- levels(group) 
sel <- (group %in% lv[1:6]) 
seqIplot(bs[sel,], group=group[sel], sortv="from.end", withlegend=FALSE) 
seqIplot(bs[!sel,], group=group[!sel], sortv="from.end") 

변수로 색인 플롯을 정렬하는 경우 실제로 정렬 변수의 동일한 하위 집합을 가져야합니다. 귀하의 경우에는 sortv=XXX.om[sel]입니다.

+0

Gilbert에게 감사드립니다. 정확히 내가 필요한 것입니다! –

0

내가 귀하의 질문을 이해했는지 모르겠다면 원하는 데이터를 재현 할 수 있도록 일부 데이터를 게시 할 수 있습니다. 아마도 도움이 될 수 있습니다. 한 페이지에 6 개의 그래프를 플롯하려면 mfrow 매개 변수를 조정해야합니다. 원하는 값입니까?

pdf("test.pdf") 
par(mfrow=c(3,2)) 
plot(1:10, 21:30) 
plot(1:10, 21:30, pch=20) 
hist(rnorm(1000)) 
barplot(VADeaths) 
... 
dev.off() 
+0

응답 해 주셔서 감사합니다. 사실 그것은 하나의 명령 (seqIplot)에 의해 생성 된 그래프를 가지고 있기 때문에 여러 하위 그래프 (명령 그룹 = XXX $ 변수 사용 덕분에)로 나뉘어져 있기 때문에 정확하지 않습니다. 이 서브 그래프 (seqIplot 명령으로 시작한 주 그래프에 속함)는 두 개의 pdf 페이지를 통해 배포하려고합니다. –