使用knitr将.Rnw文档编译为pdf,out.width选项无法重置块中输出文本的宽度。
如何将输出文本保留在具有背景颜色的区域中?
答案 0 :(得分:4)
PDF中的文本输出宽度始终是一个痛苦的问题。确保一切适合a page并不容易。两种可能的通用解决方案(如果必须使用LaTeX / PDF):
在LaTeX中使白色边距变小,例如
\usepackage{geometry}
\geometry{verbose,tmargin=3cm,bmargin=3cm,lmargin=3cm,rmargin=3cm}
使R中的文本输出更窄,例如
options(width = 60)
请注意,这些解决方案无法保证正常工作,因为您无法确定文本输出的宽度,并且某些输出函数不符合width
选项。例如,完成这项工作几乎是不可能的:
cat('This is a long long long long long long long long long long long long long long long long long long long long long long long long string. Haha.\n')
有一些LaTeX软件包如listings
可以包含逐字输出,但这也会导致输出难看。例如,如果R的自然输出为此(假设两条线太宽):
text output wrapped by R
and then wrapped by LaTeX
LaTeX包装可以将其转为:
text output wrapped
by R
and then wrapped by
LaTeX
对于显示列联表的具体应用,我的建议是转置表格(t(table(...))
)并打印出来。