问题: 有没有办法在Rmarkdown文档中使用tikz表示法而无需将文档编译为pdf?
并且(朝着同一方向):
问题 在我想要编译为html的RMarkdown文档中添加多个tikz图形的最佳方法是什么(同时保持flexibilty将文件编译为pdf或word in后期也是如此)?
我已经阅读了很多帖子(例如TikZ in R Markdown或How can I use TikZ to make standalone (SVG) graphics?)的答案,这些答案会提出类似的问题,但我仍然不完全确定,因此问题也是如此。
我基本上想要运行这段代码
---
output: pdf_document
header-includes:
- \usepackage{tikz}
---
## TikZ picture
Some picture
\begin{tikzpicture}
\draw (0,0) circle (2cm);
\end{tikzpicture}
而不是pdf_document
我想要html_document
+一些魔法自动将tikz图形转换为html可以理解的东西。有什么建议吗?
答案 0 :(得分:7)
我刚刚发现您在修改引擎选项时可以在Rmarkdown的代码块中添加tikz代码:
---
output: html_document
---
Some picture
```{r,engine='tikz'}
\begin{tikzpicture}
\draw (0,0) circle (2cm);
\end{tikzpicture}
```
问题是图形是像素化的,并且不遵守比例。解决这个问题的一种方法可能是改变图形输出的扩展(到pdf)以及块大小选项的宽度和高度(例如等于3英寸):
```{r,engine='tikz',fig.ext='pdf',fig.width=3}
\begin{tikzpicture}
\draw (0,0) circle (2cm);
\end{tikzpicture}
```
我确定有更好的解决方案,但这是一种使用tikz代码进行html输出的简单方法。