knitr没有将数字对齐到pdf输出的中心位置?

时间:2016-01-05 17:52:41

标签: r latex rstudio knitr pdflatex

使用knitr制作pdf,这些数字在使用fig.align =' center'时无法显示。选项:

require(knitr)
opts_chunk$set(fig.align='center') 

OR

```{r chunkname, fig.align='center'}
...code that makes figure...
```

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

这是一个应该用1.8 knitr版本解决的老问题,但仍然有同样的问题:(

有什么想法吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

您需要为此设置GLOBAL选项。 我将此标题作为我的文档的标准,并根据需要进行更改:

### Set global and markdown global options

```{r global.options, include = TRUE}
knitr::opts_chunk$set(
    cache       = TRUE,     # if TRUE knitr will cache the results to reuse in future knits
    fig.width   = 10,       # the width for plots created by code chunk
    fig.height  = 10,       # the height for plots created by code chunk
    fig.align   = 'center', # how to align graphics in the final doc. 'left', 'right', 'center'
    fig.path    = 'figs/',  # file path to the directory where knitr shall store the graphics files
    results     = 'asis',   # knitr will pass through results without reformatting them
    echo        = TRUE,     # in FALSE knitr will not display code in the code chunk above it's results
    message     = TRUE,     # if FALSE knitr will not display any messages generated by code
    strip.white = TRUE,     # if FALSE knitr will not remove white spaces at the beg or end of code chunk
    warning     = FALSE)    # if FALSE knitr will not display any warning messages in the final document
```

另外,请检查您是否在doc的开头设置了输出类型:

---
title:  "blah-blah"
author: "Denis Rasulev"
date:   "November 2015"
output: pdf_document
---

答案 1 :(得分:1)

问题解决了! 这不是一个非常“容易”的问题,可能是由于laTex规则(我无法在laTex中编程,因此我不确定这一点)。 问题出在chuncks标识符中。我把一些由多个单词组成的标识符放在一个单词和另一个单词之间:

'''{r #identifier one}   #before
code
'''

'''{r #identifier-one}   #after
code
'''

在单词之间勾选解决了问题,允许markdown将文件呈现为pdflatex。

无论如何,非常感谢你!