更改 R Markdown 中的参考书目样式

Posted

技术标签:

【中文标题】更改 R Markdown 中的参考书目样式【英文标题】:Change bibliographystyle in R Markdown 【发布时间】:2018-10-07 11:50:53 【问题描述】:

我想在 R Markdown 中更改 bibliographystyle,但我发现没有任何帮助。

我不希望参考书目中有任何“和”(在最后一位作者之前)。 我的首选是如果我可以使用 alphadin(bst-file here)但我无法让它工作。

到目前为止,这是我的 YAML:

---
output: 
  pdf_document
bibliography: literatur.bib
biblio-style: alphadin.bst
header-includes:
  - \usepackagegraphicx 
  - \usepackagefloat       
  - \usepackage[ngerman]babel 
  - \usepackagefancyhdr
  - \usepackagehyperref
  - \pagenumberinggobble
  - \usepackagebooktabs
  - \usepackagenatbib  
---

bst 文件与 R Markdown 文件位于同一目录中。

【问题讨论】:

【参考方案1】:

如果你想设置参考书目样式使用 bst 文件,你需要强制 R Markdown 使用 natbibbiblatex 作为引文管理器。默认情况下,它将使用 pandoc 来构建引用。 This article 更多地解释了这种行为。

其次,一旦你有这个工作,你需要改变文件的引用风格。默认情况下,natbib 将使用作者年份引用,但您提供的 bst 文件不适用于这些。所以我将引用样式更改为数字。

下面是一个最小的例子。它将创建一个参考书目文件test.bib,但您需要确保 alphadin.bst 文件位于同一目录中。

---
output: 
  pdf_document:
     citation_package: natbib
bibliography: test.bib
biblio-style: alphadin
header-includes:
  - \setcitestylenumbers
---

[@R-rmarkdown]

```r
knitr::write_bib(x = "rmarkdown", file = "test.bib")
```

【讨论】:

非常感谢!它就像你说的那样工作,我只需要写“test”而不是“test.bib”。 完成!抱歉,我不知道“接受”功能;) @MichaelHarper 我有一个类似的问题here 如果你想看看:【参考方案2】:

还有另一种方法可以设置 natbib 的引用样式:YAML 中的natbiboptions: roundcitation_package: natbibnatbiboptions: round 的组合等价于 \usepackage[round]natbib。请注意,natbiboptions: round 位于 output 键之外。

(在以下示例中,我使用了biblio-style: apalike,但该示例应该适用于任何biblio-style。)

---
output: 
  pdf_document:
     citation_package: natbib
bibliography: test.bib
biblio-style: apalike
natbiboptions: round
---

[@R-rmarkdown]

```r
knitr::write_bib(x = "rmarkdown", file = "test.bib")
```

【讨论】:

以上是关于更改 R Markdown 中的参考书目样式的主要内容,如果未能解决你的问题,请参考以下文章

markdown Bootstrap - 更改表单的占位符文本样式

如何在R Markdown中改变biblatex中的引用风格?

github样式的markdown

如何根据带有闪亮元素的 R Markdown 文档中的条件禁用按钮?

注释掉 R Markdown 中的文本(Rmd 文件)

如何使用ggplot2格式化带有轴标签和旋转的R中的雷达图