knitr没有将数字与pdf输出中心对齐 - 替代方案?

use*_*188 10 pdf r rstudio knitr

使用knitr制作pdf,使用fig.align='center'选项时数字不会显示:

require(knitr)
opts_chunk$set(fig.align='center') 
Run Code Online (Sandbox Code Playgroud)

要么

```{r chunkname, fig.align='center'}
...code that makes figure...
```
Run Code Online (Sandbox Code Playgroud)

无论哪种方式,在按下编织PDF按钮时,pdf上都没有数字.但我删除了该fig.align选项,数字显示,左对齐.

fig_crop: false在YAML标题中也尝试了相同的结果.

这暗示了为什么它不起作用:https://github.com/rstudio/rmarkdown/issues/86但是如果我们需要以数字为中心,它不会涵盖做什么.我可以将这个情节作为png生成并用rmarkdown导入它,但这绝对不是可重复研究的精神!

有什么想法怎么办?

## R version 3.1.1 (2014-07-10)
## Platform: x86_64-pc-linux-gnu (64-bit)
## RStudio Version 0.98.1028
Run Code Online (Sandbox Code Playgroud)

(这不是Knitr的副本:opts_chunk $ set()在Rscript命令中不起作用)

Yih*_*Xie 12

这已在knitr开发版本中得到修复,我打算在接下来的几天内发布到CRAN,如果CRAN维护者的一切顺利,版本将为1.8.

原始无法对齐数字的原因是,当fig.align指定时,将使用图像的HTML语法(即<img src=... style=... />),并且Pandoc无法正确地将其转换为LaTeX.knitr 1.8将只使用原始LaTeX语法来编写数字,这些数字将在从Markdown到LaTeX的转换过程中保留,因为它的raw_tex扩展.


mru*_*rub 2

作为解决方法(请参阅Yihui的评论),您可以保留 .tex 文件并手动将图像居中:

\n\n
\\centering\n\\includegraphics[]{\xe2\x80\xa6}\n
Run Code Online (Sandbox Code Playgroud)\n

  • 谢谢,但我们当然需要一个自动解决方案:)我现在正在研究这个。 (2认同)