无需考虑纸张宽度即可进行 Sweave 打印编码

无需考虑纸张宽度即可进行 Sweave 打印编码

我将纸张尺寸改为 A3,以便确保某些代码块能够不间断地显示。但是,Sweave 似乎不够智能,无法检测到纸张尺寸的变化,并且仍然会像 A4 纸一样换行,如下所示。显然,有足够的空间打印矩阵而不会换行。请问我该如何告诉 Sweave 这样做?谢谢。仅供参考,我的代码如下。

\documentclass[english, hidelinks, 11pt, landscape]{exam}

\usepackage[a3paper]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{bigints}
\usepackage[stable]{footmisc}
\usepackage{amssymb}
\usepackage{amsthm}

\begin{document}

\SweaveOpts{concordance=TRUE}

<<>>=
x <- matrix(1:15)
y <- matrix(20:40, nrow=1)
x%*%y
@

\end{document}

在此处输入图片描述

答案1

Sweave 和 Knitr 都无法识别 LaTeX 文档的纸张或文本宽度。您必须在 R-chunk 中设置宽度。以下是简单示例

\documentclass{article}

\begin{document}
<<>>=
1:200
@

<<>>=
options(width = 25)
1:200
@

<<>>=
options(width=160)
1:200
@

\end{document}

在此处输入图片描述

相关内容