2016-08-22 2 views
4

Каков правильный способ заставить knitr делать перекрестные ссылки? Рекомендуемый подход в документации (см. Ниже) не работает для меня. Я пишу книгу с книткой и шаблоном tufte_book. Я не могу заставить перекрестные ссылки на цифры (или таблицы) работать правильно. Я вложил небольшой клип, который постоянно не позволяет обновить перекрестные ссылки в документе. Im работает R 3.2.3 на x86_64-apple-darwin13.4.0. Я знаю, что на этот вопрос уже был дан ответ, но все ответы не срабатывают одинаково. Нет, я не хочу использовать bookdown.knitr tufte перекрестные ссылки сбой

--- 
title: "Cross-references SNAFU" 
output: 
    tufte::tufte_book: 
    citation_package: natbib 
    latex_engine: xelatex 
--- 
```{r ch3-inits, include=FALSE} 
library(tufte) 
library(knitr) 
knitr::opts_chunk$set(eval.after = 'fig.cap') 

``` 
\chapter{Not Working Cross References, the beginning \label{chap:alpha} } 

```{r t-test, fig.cap=paste('$2 \\times 2$ is', 2*2), fig.height=2.5} 
x = rnorm(30) 
par(mar=c(4, 4, .1, .1)) 
hist(x, main='') 
``` 


Here is the reference to that Figure \ref{fig:t-test}. NOT. 

Вот клип выхода: resultant pdf output

+0

Ваш пример работает в моей системе. Попробуйте удалить все вспомогательные файлы LaTeX ('filename.aux' и друзей). –

+0

Спасибо, теперь я уверен, что это проблема конфигурации. Но я еще не понял, где. –

+0

Вы можете начать с обновления R, RStudio и вашего дистрибутива LaTeX. –

ответ

0

Решение этой проблемы заключается в установлении keep_tex: истинно в YAML, а затем отдельно запустить (La) Tex файл вне Rstudio. Я не знаю, но это работает. Все еще не знаю, почему это путается с несколькими дочерними документами, но, похоже, для меня.