1

我正在尝试打印一个图,这取决于一个有 12 个术语的变量。该图是使用 OM 距离对序列进行聚类分类的结果。

我在一个 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()

但是打印很小......所以我尝试在 2 页上打印,如下所示:

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()

但它不起作用......你知道我如何要求 R 将术语的变量分成两组,以便每 pdf 页打印 6 个图形吗?

4

2 回答 2

2

解决方案是在每个页面上分别绘制您想要的组子集。这是一个使用biofam提供的数据的示例TraMineR。组变量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]在您的情况下。

于 2013-05-19T17:41:29.133 回答
0

我不知道我是否理解您的问题,您可以发布一些数据以帮助我们重现您想要的内容,也许这会有所帮助。要在一页中绘制六个图表,您应该调整 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()
于 2013-05-19T12:48:17.963 回答