我的问题是使用相对链接和“编译”(编织)。
我正在使用RMarkdown写一本书。由于文件将相对较大,因此我需要分为子文件和目录。
我有一个仅包含指向各章(chap1,chap2,...)的链接的主文件。每个章节都有一个文件,每个文件都需要引用一些图(图1,...)。
我希望能够彼此独立地编织masterfile.Rmd和chap1.Rmd,以便为章节获取一个文件,为整本书获取一个文件。
这是我的文件的组织方式(MVE)。目录以大写形式显示。
masterfile.Rmd的代码如下:
{r child = '/chapters/chap1.Rmd'}
chap1.Rmd的代码如下:
![](../figures/fig1.pdf)
当我编织时chap1.Rmd
,一切都很好。当我从编织时masterfile
,收到以下消息:
[警告]无法获取资源'../figures/fig1.pdf':PandocResourceNotFound“ ../figures/fig1.pdf”
似乎fig1.pdf
找不到。我猜这是因为主文件中的include语句仅“复制”其代码chap1.Rmd
并在ROOT
目录中(而不是在CHAPTERS
目录中)“执行”它,因此“ ..”在以下情况下驱动到不存在的位置(在ROOT之前)从...编织而成masterfile
。
我可以更改设置,写![](/figures/fig1.pdf)
在chap1.Rmd
文件中。从编织masterfile
但从编织出来的时候很好用chap1.Rmd
。
你知道两者兼有吗?
欢迎来到RMarkdown社区!
由于KnitR,Rmd和pandoc的相互配合,这并不是您想像的那样简单的解决方案,但是目录重组几乎会更容易。
即使您浏览Rmarkdown作者的最新书籍RMarkdown Cookbook
HERE,也是如此。它们在ROOT
目录中具有所有章节,并且仅具有图像(可能还有图形)的子目录。
资源:
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句