请原谅这个非常基础的问题。我最近开始使用 R bookdown 尝试写论文。我读过食谱和 book down 指南。我使用 rmardown,并且理解这一点,但我不明白 bookdown 如何“知道”要把什么放在一起。根据帮助表的指示,我有几个章节:
- 索引
- 01-引言(主要为自由文本)
- 02 方法(主要是表格)
- 03 结果(输出、图表、表格)
- 04 结论(自由文本)。
通常在 rmarkdown 中,我打开的每个新文件都有一个“r 设置”块,用于设置文档的初始全局决策(例如,echo=TRUE)。我还安装并加载了该文档所需的所有包。我还需要在 bookdown 中执行此操作吗?还是我只需在索引章节中执行一次?我只是不太明白索引中应该放什么,其他章节中不应该放什么。
另外,每次我保存时,它都会创建一个“book”文件夹和“book down 文件”。我想我只是不碰这些?
最后:如果我在第 3 章中创建了一个图表,我可以将其放在第 2 章中吗?还是它按章节顺序呈现,并且为我的所有图表代码创建一个单独的文件是否更好?
非常感谢
答案1
对于 R 块,理解这一点的重点是,bookdown 默认渲染方法是“合并和编织”(MK),但可以制作“编织和合并”(KM),因此您需要的 R 块取决于此。使用默认 MK 就像编译 Rmarkdown 的单个文件,因此您在“简介”中的 R 块中所做的操作将在“结果”的 R 块中考虑。所有代码都在单个 R 会话中运行。使用替代方法,每个章节的 R 代码都是独立执行的。
对于 LaTeX,无论您使用 MK 还是 KM 方法,最终都会有一个导出为 LaTeX 格式的 markdown 合并版本,这样编译器将始终处理单个文档,因此您必须只提供一次所有 LaTeX 设置,在 YAML 标头中(index.Rmd
或在名为 的单独 YAML 文件中_output.yml
),仅此而已。还请注意,出于同样的原因,.Rmd 文件中的 LaTeX 命令(例如\Large
或\parskip5em
)不仅可以应用您编辑的文件,还可以应用所有以下文件。(这可能会导致一些意外,您无法在单个文件的预览中检测到这一点)。
最后,该 _book
目录用于输出,即您可以获得 PDF 格式的书籍或所有 HTML 书籍结构的地方,而 _bookdown_files 是编译期间所需文件的缓存文件夹。