Beamer: использовать основной шрифт документа на графиках при использовании tikzDevice

Я пытаюсь создать шаблон документа Rmd, который использует устройство tikz для вывода графиков. Обычно, когда вы делаете то же самое в документе Rweave (sweave), шрифт в графике tikz такой же, как и в документе, потому что tikz принимает преамбулу документа, в которой установлен шрифт.

В Rmarkdown я могу добиться этого только при установке опции чанка external = F, Таким образом, tikz grpahics не скомпилированы заранее.

Но я хочу использовать эту внешность и все еще иметь тот же шрифт в графике в окончательном выводе PDF.

Heres - это простая презентация с использованием tikz. Как сделать так, чтобы на графиках был один и тот же шрифт?

---
title: "TikZ"
author: "Martin Schmelzer"
date: "10/9/2017"
output: beamer_presentation
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE, dev = "tikz")
```

## Slide with Plot

```{r pressure}
plot(pressure)
```

1 ответ

Решение

Вы должны сообщить tikzDevice, что вы используете класс beamer, иначе он не знает и примет нормальный \documentclass{article}, Если вы посмотрите на страницу помощи ?tikzDevice::tikzвы можете увидеть, что класс документа может быть объявлен через опцию tikzDocumentDeclarationнапример,

options(tikzDocumentDeclaration = '\\documentclass{beamer}')

Полный пример (я уменьшил размер графика, чтобы вы могли видеть стиль шрифта более четко на графике):

---
title: "TikZ"
author: "Martin Schmelzer"
date: "10/9/2017"
output: beamer_presentation
---

```{r setup, include=FALSE}
options(tikzDocumentDeclaration = '\\documentclass{beamer}')
knitr::opts_chunk$set(echo = FALSE, dev = "tikz")
```

## Slide with Plot

```{r pressure, fig.width=5, fig.height=4}
plot(pressure)
```

сюжет в бимере и R Markdown

Другие вопросы по тегам