KnitR如何在块和内联代码中以不同方式处理输出数字?

时间:2013-03-09 16:42:12

标签: r knitr

我很困惑KnitR如何在块中和digits的内联代码中处理\Sexpr{}输出的方式不同。一般来说,我希望它们处理相同。一旦我理解了如何为这两种类型的输出设置选项,这不会造成任何问题,我在手册中没有找到。请参阅下面的MWE。

\documentclass[12pt, english, oneside]{amsart}
\begin{document}
<<>>=
options(digits=2)
pi
@
\Sexpr{pi}
\end{document}

如果你不想编译这个,那么块打印3.1而\Sexpr打印3.14。

1 个答案:

答案 0 :(得分:1)

根据?options

 ‘digits’: controls the number of digits to print when printing
      numeric values.  It is a suggestion only.  Valid values are
      1...22 with default 7.  See the note in ‘print.default’ about
      values greater than 15.

特别注意仅限建议。但在knitr中,默认情况下,内嵌数字根据round()进行了getOption('digits')