【发布时间】:2021-12-07 06:04:50
【问题描述】:
我有一个 Rmarkdown 文档,其中包含一些使用 reticulate 库的 python 代码块。代码完美执行输出;但是,我将如何使用其标签交叉引用文本中生成的图?我正在使用bookdown::pdf_documents2 等,并且使用标准\@ref(fig:my-plot) 对R 块的内联引用没有问题。
MWE 是:
```{python, my-plot}
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(10)
y = np.arange(10)
plt.figure()
plt.plot(x, y)
plt.show()
```
如图\@ref(fig:my-plot)....
我尝试过不添加块类型(无花果等)
我知道我可以将图像保存到文件中并将其包含在knitr 中作为后续的 R 块,但最好单独通过 python 块来完成。
【问题讨论】:
-
您可以保存绘图,然后使用简单的 Markdown 引用它,而无需使用语法
的代码块。好像你已经读过this resource。这表示您的代码块中还需要一个fig.cap选项,但是您已经说过您尝试过 -
谢谢,丹尼尔。是的,我当前的解决方法是将保存的绘图包含在带有标签的单独 R 块中 - 允许交叉引用在整个文档中保持正确的编号,例如,图 1.1 等。单个块的好处是 PDF image 是为 PDF 输出创建的,而 png 是为 HTML 创建的,所以如果可以的话,那将是理想的。
标签: python r r-markdown reticulate