Ошибка в tikzDevice с knitr

Кажется, что есть конфликт с новыми версиями knitr и / или tikzDevice и / или R, В любом случае я не могу заставить его работать больше.

Вот MWE:

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage{tikz}

<<setup, include=FALSE, cache=FALSE>>=
  library(knitr)

  opts_chunk$set(fig.path='figure/graphics-', 
                 cache.path='cache/graphics-', 
                 fig.align='center',
                 dev='tikz'
                )
@

\begin{document}
blop

<<>>=
plot(1:10)  
@

\end{document}

Это возвращает ошибку:

Quitting from lines 21-22 (testTikz.Rnw)  Error in
tikzDevice::tikz(..., packages = c("\n\\nonstopmode\n", packages,  :  
unused argument (verbose = FALSE) Calls: knit ... chunk_device ->
dev_new -> do.call -> <Anonymous> -> <Anonymous>

Execution halted

Я использую версию R 3.3.1, knitr_1.14 и tikzDevice_0.8.1

РЕДАКТИРОВАТЬ

Я взломал, разветвив knitr репо на GitHub, чтобы изменить tikz_dev функция для удаления verbose аргумент. Теперь я получаю следующую ошибку:

Error in (function (file = ifelse(onefile, "./Rplots.tex", "./Rplot%03d.tex"),  :
Graphics API version mismatch
Calls: knit ... do.call -> <Anonymous> -> do.call -> <Anonymous> -> .External

1 ответ

Я получил это исправление, добавив в .Rprofile несколько строк и обновление tikzDevice к версии tikzDevice_0.10-1

options(tikzMetricPackages = c("\\usepackage[utf8]{inputenc}",
                               "\\usepackage[T1]{fontenc}",
                               "\\usetikzlibrary{calc}",                   
                               "\\usepackage{amssymb}"
                              )
       )
Другие вопросы по тегам