图:使用knitr的R标记中乳胶图的标题

图:使用knitr的R标记中乳胶图的标题,r,knitr,r-markdown,R,Knitr,R Markdown,我正在编写一个.rmd文件,使用knitr将其转换为.pdf。在我的降价文件中,我有一系列经典的R图,这些图被分块生成,因此都由knitr编号和标题 现在,在显示我的R图之前,我想添加一个用LaTeX生成的简单因果图并加上说明。我如何将我的LaTeX图编号为与其他R图相同序列的图形?给我的乳胶图加个标题怎么样 我的rmarkdown文档的一个简单示例可以说明: --- title: "Figure captions" output: pdf_document: fig_

我正在编写一个.rmd文件,使用knitr将其转换为.pdf。在我的降价文件中,我有一系列经典的R图,这些图被分块生成,因此都由knitr编号和标题

现在,在显示我的R图之前,我想添加一个用LaTeX生成的简单因果图并加上说明。我如何将我的LaTeX图编号为与其他R图相同序列的图形?给我的乳胶图加个标题怎么样

我的rmarkdown文档的一个简单示例可以说明:

---
title: "Figure captions"
output: 
    pdf_document:
        fig_caption: yes
        number_sections: yes
header-includes:
    - \usepackage{tikz}
    - \usetikzlibrary{arrows, shapes, positioning, calc}
---

# A simple LaTeX diagram with no caption

This LaTeX diagram should register as 'Figure 1':

\tikzset{line/.style = {draw, -latex},
        cloud/.style = {draw, ellipse, node distance=3cm,
                        minimum height=2em}
}
\begin{tikzpicture}[node distance = 6cm, auto]
    \node [cloud] (init) {Z1};
    \node [cloud, below left = 2 of init] (X1) {X1}; 
    \node [cloud, below right = 2 of init] (Y1) {Y1};
    \node [cloud, below = of init] (Z2) {Z2};
    \path [line] (X1) -- (Y1);
    \path [line] (init) -- ($(X1)!0.5!(Y1)$);
    \path [line] (Z2) -- ($(X1)!0.5!(Y1)$);
\end{tikzpicture}


# A simple R plot with a caption

Here is a generic R plot that should be 'Figure 2', but is generated as 'Figure 1':

```{r figure2, echo=FALSE, fig.cap="This should be called Figure 2"}
library(ggplot2)
qplot(mpg, wt, data = mtcars)
```

换句话说,我正在寻找一种方法,让KNITR将我的胶乳图识别为与我的代码块中生成的情节相符合的一个情节,所以我可以简单地将其视为序列中的另一个数字。我怎样才能做到这一点?

因为看起来您已经在标记文件中包含了LaTeX代码,您能在标准图形环境中包装tikz代码吗?我相信编号是由LaTeX完成的,而不是由knitr完成的,因此knitr不需要知道这是一个图形。

看起来你是对的,用简单的LaTeX标题在图形环境中包装tikz代码解决了问题!谢谢如果有多个,也可以将它们分别呈现为PDF(
\documentclass{standalone}
,然后在地物环境中使用
\includegraphics{}