python - 使用网状交叉引用 Rmarkdown 中的 python 代码块
问题描述
我有一个 Rmarkdown 文档,其中包含一些使用该reticulate
库的 python 代码块。代码完美执行输出;但是,我将如何使用其标签交叉引用文本中生成的图?我正在使用bookdown::pdf_documents2
etc,并且使用标准的 R 块的内联引用没有问题\@ref(fig:my-plot)
。
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 块来完成。
解决方案
fig.cap
正如丹尼尔在问题评论中正确建议的那样,我之前在块中尝试时一定犯了错误。python
再次尝试这个,我可以在所有 HTML、PDF 和 word 输出中完美地交叉引用该块。更新后的 MWE 为:
```{python, my-plot, fig.cap="My Caption"}
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)
...
YAML 标头中的每个输出都需要不同的bookdown::
选项。对于 PDF ( bookdown::pdf_document2
),对于 word ( bookdown::word_document2
) 和 Rmdformats 在我的情况下,选项use_bookdone: true
.
推荐阅读
- python - 使用 Pytube 从 YouTube 下载播放列表
- excel - 分组形状
- node.js - constant_score 查询不支持在代码中查询
- icloud - 是否可以使用 CloudKit 从 iCloud 驱动器获取数据
- c++ - 使用 MiniDumpWriteDump 的 _set_se_translator 何时无法写入转储?
- google-sheets - 对具有相对位置的列的值进行排序(使用其他列数据顺序)
- google-bigquery - 无法离开加入 Tableau 中的 Google Big 查询
- python - 为什么我的 Python async / await 实际上不会写 matplotlib 文件?
- angular - 如何修复订阅泄漏 Angular ngrx 商店
- angular - 未找到自定义管道 ionic 4 | 找不到管道