这可能是一个边缘情况,但我正在尝试使用knitr创建一个beamer演示文稿,我想使用不同的公式作为函数的参数来显示代码块。我发现使用叠加层时,代码块中的波形符号会消失。有没有办法让它们显示?
这是一个可重复性最小的例子:
\documentclass{beamer}
\begin{document}
\begin{frame}[fragile]
\frametitle{Slide with overlay}
\only<1>{
<<notilde, eval = FALSE>>=
myfunction(data, formula = ~ x)
@
}
\only<2>{
<<notilde2, eval = FALSE>>=
myfunction(data, formula = y ~ x)
@
}
\end{frame}
\begin{frame}[fragile]
\frametitle{Slide without overlay}
<<tilde, eval = FALSE>>=
myfunction(data, formula = ~ x)
@
\end{frame}
\end{document}
演示文稿的第一帧如下所示:
感谢任何帮助。
修改
没有叠加的幻灯片如下所示:
为了澄清,<<...>>
和@
的语法特定于R包编织者。这些符号之间的任何内容都被knitr解释为R代码块并转换为latex以包含语法高亮。
答案 0 :(得分:1)
你可以用数学模式$ \ sim $
替换〜如果不是在逐字的特殊环境中,乳胶中的波浪号是受保护的空间,即没有发生断线的空间。
从您的问题中不清楚:它是否适合您的第二帧,没有叠加? 我不知道你的部分语法:是&lt;&lt; ...&gt;&gt; = ... @等同于逐字或代码环境?它看起来有点像,因为你的文本是用固定的空格字体设置的,并且语法很高。