在输出中显示<< ...>> =

时间:2012-11-12 13:48:15

标签: r knitr

我想在LaTeX文档中演示一个带有knitr<>>> =前导码的R代码示例。这是我想要的输出的一个例子:

snip-of-code

它必须简单 - 但我错过了一些东西。我检查了文档并扫描了堆栈溢出 - 但没有运气。这是一个MWE:

    \documentclass{article}
    \begin{document}
    <<mychunk, cache=TRUE, eval=FALSE, dpi=100>>=
    "hello world" 
    @
    \end{document}

连连呢?我尝试在LaTex中缩进代码并包装在verbatim块中,但只有错误。

3 个答案:

答案 0 :(得分:6)

我刚查过knitr的手册。这是包工作者解决问题的方式:

<<use-ext-chunk, echo=FALSE, comment=NA>>=
cat('<<Q1, echo=TRUE, tidy=TRUE>>=','@',sep='\n')
@

生成输出,如编织器manual

的第9页所示

这是一个最小的例子:

\documentclass[a4paper]{article}
\begin{document}


<<use-ext-chunk, echo=FALSE, comment=NA>>=
  cat('<<Q1, echo=TRUE, tidy=TRUE>>=','@',sep='\n')
@

\end{document}

产生附加输出。

enter image description here

答案 1 :(得分:4)

一年前我在tex.stackexchange.com上遇到了同样的问题,得到了一些不错的回复:https://tex.stackexchange.com/q/35485/3419。这适用于Sweave,但我认为它在knitr中的作用相同。

我想我最后只是在逐字环境中使用\Sexpr{"<<>>="}\Sexpr{"@"}。 e.g:

\documentclass{article}
\begin{document}
\begin{verbatim}
\Sexpr{"<<mychunk, cache=TRUE, eval=FALSE, dpi=100>>="}
"hello world" 
\Sexpr{"@"}
\end{verbatim}
\end{document}

答案 2 :(得分:3)

快速跟进:此功能已在knitrdevel version&gt; = 0.8.15)中实施;查看RnwRmd的示例。另一种解决方案是knitr FAQ