问题
它似乎无法呈现内联R代码输出数超过5位的PDF文档。
下面是一个最小的例子来强调这种行为:
---
title: "test"
author:
- test
output: pdf_document
---
# test
```{r}
a <- 12345
test: r a
这将返回错误:
"D:/Ksoftware/RStudio/bin/pandoc/pandoc" +RTS -K512m -RTS testpdf2-ctex.utf8.md --to latex --from markdown+autolink_bare_uris+ascii_identifiers+tex_math_single_backslash --output testpdf2-ctex.tex --template "C:\Users\krup\Documents\R\win-library\3.4\rmarkdown\rmd\latex\default-1.17.0.2.tex" --highlight-style tango --latex-engine pdflatex --variable graphics=yes --variable "geometry:margin=1in"
! Missing $ inserted.
$
l.137 test: 1.2345\times
10^{}{4}
Here is how much of TeX's memory you used:
10802 strings out of 494923
149004 string characters out of 6180912
210884 words of memory out of 5000000
14019 multiletter control sequences out of 15000+600000
23985 words of font info for 22 fonts, out of 8000000 for 9000
14 hyphenation exceptions out of 8191
28i,3n,32p,240b,290s stack positions out of 5000i,500n,10000p,200000b,80000s
错误: Failed to compile testpdf2-ctex.tex. See testpdf2-ctex.log for more info.
此外: Warning message:
运行命令'"pdflatex" -halt-on-error -interaction=batchmode "testpdf2-ctex.tex"'的状态是1
停止执行
这是一个问题吗?
2条答案
按热度按时间qcbq4gxm1#
此问题之前已在存储库的问题中指出:https://github.com/rstudio/rmarkdown/issues/160
问题源于科学记数法,而不是数字的长度。当数字超过5位时,默认值为R,将数字转换为1.234 * 10^4,这会导致转换到LaTeX文件时出现问题。
帖子显示了一些解决问题的方法:
1.用$符号将内联代码括起来
RMarkdown中的
$
符号用于数学表示法:test: $
r a
$r a
uubf1zoe2#
我无法让上面列出的答案对我起作用(在Mac M1、
RStudio 2022.07.1 Build 554
、R Markdown v 2.14
上)。真正起作用的是内联使用round函数: