0

次のコードを使用して、2 つの図を 1 つの PDF にプロットしようとしています。

ncols <- 1
nrows <- 2
grid.newpage()
pushViewport(viewport(layout = grid.layout(nrows, ncols)))
for (i in seq_along(chroms)) {
pushViewport(viewport(layout.pos.col = 1, layout.pos.row = 1))
plotTracks(list(itrack, gtrack, dTrack),
    chromosome = chr1, add = TRUE)
pushViewport(viewport(layout.pos.col = 1, layout.pos.row = 2))
plotTracks(list(biomTrack, gtrack2),
    chromosome = chr1, add = TRUE)
popViewport(1)
}

問題は、2 つの図が重なっているということです。(そして図のrow2は空のままです)

新鮮な目が私のバグをキャッチすることを願っています。私は何を間違っていますか?

@DINREからのコメントを反映するように編集

ncols <- 1
nrows <- 2
grid.newpage()
pushViewport(viewport(layout = grid.layout(nrows,
+     ncols)))
for (i in seq_along(chroms)) {
pushViewport(viewport(layout.pos.col = 1, layout.pos.row = 1))
plotTracks(list(itrack, gtrack, dTrack),
    chromosome = chr1, add = TRUE)
**popViewport(1)** ## NEED TO POP OUT FIRST ROW BEFORE PLOTTING SECOND.
pushViewport(viewport(layout.pos.col = 1, layout.pos.row = 2))
plotTracks(list(biomTrack, gtrack2),
    chromosome = chr1, add = TRUE)
popViewport(1)
}
4

1 に答える 1

2

一番下の行のビューポートが一番上の行のビューポートの内側に押し込まれています。一番上の行のビューポートを最初にポップすると、問題が解決するようです。

注: これは、ビューポートでよくある間違いです。

于 2013-04-01T19:25:43.000 に答える