3

我是 latex 和 knitr 的新手,当我使用 echo=FALSE 时,R 块的输出存在问题。下面的 .Rnw 代码按预期工作,即输出有

    1. some code
    2. a block of figures arranged 2 x 3
    3. some more code
    4. a block of figures arranged 2 x 3

但是更改块开口以从输出中消除代码块

<<bghist2_mas_rma, fig.height=4, fig.width=6, echo=FALSE>>=

不仅从输出中删除代码(好),而且还覆盖 par() 设置,使得两个图形(每个 2 x 3)在页面上相邻放置,第二个图形的大部分从边缘脱落。

除了简单地将代码留在输出中之外,我怎么能解决这个问题?

谢谢

\newpage
<<bghist2_mas_rma, fig.height=4, fig.width=6, echo=TRUE>>=
par(mfrow=c(2,3))
for(i in 1:6){
    hist(bg.mas[,i], xlab="", las=1,
    main=paste(sep="", "bg.mas[, ",  i, "]"),
    xlim=c(-100, 300), breaks=10000)
}
par(mfrow=c(1,1))

par(mfrow=c(2,3))
for(i in 1:6){
    hist(bg.rma[,i], xlab="", las=1,
    main=paste(sep="", "bg.rma[, ",  i, "]"),
    xlim=c(-100, 300), breaks=10000)
}
par(mfrow=c(1,1))
@
4

1 回答 1

1

最简单的解决方案是将它们分成单独的块:

<<bghist2_mas_rma, fig.height=4, fig.width=6, echo=FALSE>>=
par(mfrow=c(2,3))
for(i in 1:6){
    hist(bg.mas[,i], xlab="", las=1,
    main=paste(sep="", "bg.mas[, ",  i, "]"),
    xlim=c(-100, 300), breaks=10000)
}
@

<<bghist2_mas_rma_2, fig.height=4, fig.width=6, echo=FALSE>>=
par(mfrow=c(2,3))
for(i in 1:6){
    hist(bg.rma[,i], xlab="", las=1,
    main=paste(sep="", "bg.rma[, ",  i, "]"),
    xlim=c(-100, 300), breaks=10000)
}
par(mfrow=c(1,1))
@
于 2012-09-14T12:39:53.420 回答