预订为方程式、数字、表格和部分提供了很好的交叉引用选项:https://bookdown.org/yihui/bookdown/cross-references.html。
但是,当我将输出设置为‘rticles::elsevier_ work’时,它们似乎不起作用。
什么是可供选择的交叉参照在里克尔斯?
发布于 2017-02-21 11:33:47
我还没有试过,但是这里有一个可能的解决方案:https://bookdown.org/yihui/bookdown/a-single-document.html
特别是,在YAML元数据中指定:
output:
bookdown::pdf_book:
base_format: rticles::elsevier_article发布于 2018-07-18 13:58:54
由于我是使用R Markdown的新手,所以我决定发布这个答案,因为有些人可能会犯同样的错误。我已经尝试了F罗德里格斯桑切斯的回答,但这是行不通的。我收到了以下信息:
! LaTeX Error: File `elsarticle.cls' not found.
! Emergency stop.
<read *>
Erro: Failed to compile report.tex. See report.log for more info.它没有起作用,因为我犯了一个新手错误,因为我试图添加建议的答案,选择New Markdown,然后选择Document。
然后,我尝试打开一个New R Markdown,从rticles包中选择From Template和Elsevier Journal Article。在那之后,我使用了F罗德里格斯-桑切斯建议的答案,这是有效的!
最后的yaml标题是:
---
title: Short Paper
author:
- name: Alice Anonymous
email: alice@example.com
affiliation: Some Institute of Technology
footnote: Corresponding Author
- name: Bob Security
email: bob@example.com
affiliation: Another University
address:
- code: Some Institute of Technology
address: Department, Street, City, State, Zip
- code: Another University
address: Department, Street, City, State, Zip
abstract: |
This is the abstract.
It consists of two paragraphs.
journal: "An awesome journal"
date: "`r Sys.Date()`"
bibliography: mybibfile.bib
output:
bookdown::pdf_book:
base_format: rticles::elsevier_article
---发布于 2020-10-04 16:41:38
@maycca请确保打开RMarkdown,从模板中选择New,并选择Elsevier版本/模板。模板将在安装后可用。
这将设置文章“基础设施”(特别是相应的cls和其他文件)。这还包括一个mybibfile.bib示例(因此,我不需要对参考书目进行注释)。如果选择将其保存在子文件夹中,请确保Rmd文件保存在该子文件夹中。
如上面/下面所示,请更改YAML的output:标记,以包括bookdown和above格式的rticles::elsevier_article指针。
仔细检查冒号和标签的使用情况。
根据上面的例子,您可以使用如下所示的预订交叉引用。我用过
(i)使用(ref:awesomeplotcaption)在代码块之前定义的外部(bookdown)图形标题。这对于保持块选项简短(呃)很有用。
(ii) \@ref(fig:awesomeplot)图的(下订)参照.请注意,\@ref(fig:...)使用块名使指针工作。因此,请确保您的块名带有标准字母、数字和破折号,即没有下划线!
按下编织按钮就会产生魔法!
---
title: Short Paper
author:
- name: Alice Anonymous
email: alice@example.com
affiliation: Some Institute of Technology
footnote: Corresponding Author
- name: Bob Security
email: bob@example.com
affiliation: Another University
address:
- code: Some Institute of Technology
address: Department, Street, City, State, Zip
- code: Another University
address: Department, Street, City, State, Zip
abstract: |
This is the abstract.
It consists of two paragraphs.
journal: "An awesome journal"
date: "`r Sys.Date()`"
#bibliography: mybibfile.bib
output:
bookdown::pdf_book:
base_format: rticles::elsevier_article
---
# First Heading
Some cool introductory text.
And an even more fascinating plot.
(ref:awesomeplotcaption) A simple demo plot
```{r awesomeplot, fig.cap="(ref:awesomeplotcaption)"}X < - 5:5
Y <- x^2
地块(x,y)
More explanatory text.
Using bookdown cross-referencing, have again a closer look at Fig. \@ref(fig:awesomeplot).这样做的结果如下:

专注于交叉引用,忽略代码块,这可以用echo = FALSE隐藏。下图如下(在本例中,通过LATEX放置)。我将其截断以使图形易于管理:)
https://stackoverflow.com/questions/42331136
复制相似问题