我正在尝试使用knitr在Latex文档中打印R代码。
我有以下简单的代码:
\begin{frame}{Plot Code}
<<plotcode,eval=FALSE,echo=TRUE,results='markup;$=\\$'>>=
...来自随机抽取数据的简单lm ......
yhat.fit <- yhat$fit[,"fit"]
......更简单的代码......
\end{frame}
这将运行,但是,没有替换$符号。相反,我得到了数学模式 在幻灯片中适合[,“fit”](以及来自pdflatex编译的“缺少$ inserted”错误。
我宁愿没有数学模式;相反,我希望看到$符号,因为它是R代码的组成部分。
作为我的解决方法,我已在$
生成的\$
文件中将.tex
替换为{{1}},但我希望有人可以解决我看似简单的问题。我认为我没有在选项中正确指定标记和字符结构,但我尝试了大量的变体而没有成功。
答案 0 :(得分:3)
我不明白results='markup;$=\\$'
的真正含义。 results
option没有取得这样的价值;目前,它只接受markup
,asis
,hide
和hold
。
我也看不出$
如何成为投影师的问题。您可能忘记了fragile
选项。一个最小的例子:
\documentclass{beamer}
\begin{document}
\title{A Minimal Demo of knitr}
\author{Yihui Xie}
\maketitle
% very important to use option [fragile] for frames containing code output!
\begin{frame}[fragile]
You can test if \textbf{knitr} works with this minimal demo. OK, let's
get started with some boring random numbers:
<<boring-chunk>>=
fit = lm(dist ~ speed, data = cars)
fit$coefficients
print(sessionInfo(), locale = FALSE)
@
\end{frame}
\end{document}
输出: