是否可以让Sweave自动在多行上打印R输入?例如,
\documentclass{article}
\begin{document}
\SweaveOpts{concordance=TRUE}
\setkeys{Gin}{width=\textwidth}
<<fig=TRUE>>=
plot(LakeHuron, ylab="Level in feet", xlab="Year", main="Level of Lake Huron 1875–1972", lwd=2, las=1)
@
\end{document}
将打印R代码以进入(和超出)右边距。从我可以推断出来,
<<>>=
options(width=60)
@
仅控制R输出。
答案 0 :(得分:3)
使用sweave,您可以尝试将参数keep.source = FALSE
添加到您的代码块中,但默认情况下仍然无法解决您的问题(在此特定示例中没有)。< / p>
以下是您目前所拥有的输出结果:
<<fig=TRUE>>=
plot(LakeHuron, ylab="Level in feet", xlab="Year", main="Level of Lake Huron 1875–1972", lwd=2, las=1)
@
如果我们添加keep.source = FALSE
<<fig=TRUE, keep.source=FALSE>>=
plot(LakeHuron, ylab="Level in feet", xlab="Year", main="Level of Lake Huron 1875–1972", lwd=2, las=1)
@
而且,如果我们作弊一点并手动重新排序参数,这里是输出的裁剪。请注意,我已将有问题的标题作为最后一项:
<<fig=TRUE, keep.source=FALSE>>=
plot(LakeHuron, ylab="Level in feet", xlab="Year", lwd=2, las=1, main="Level of Lake Huron 1875-1972")
@
答案 1 :(得分:3)
我使用knitr编译.Rnw文件,它提供了一些非常方便的代码块选项(如tidy.opts)的访问。我认为,使用下面的代码可能会解决您的数字上方的文本溢出问题。
\documentclass{article}
\begin{document}
\setkeys{Gin}{width=\textwidth}
<<fig=TRUE, tidy.opts=list(keep.blank.line=FALSE, width.cutoff=50)>>=
plot(LakeHuron, ylab="Level in feet", xlab="Year", main="Level of Lake Huron 1875–1972", lwd=2, las=1)
@
\end{document}