如何在knitr文件中为R包自动创建BibTex引用?

Ell*_*ner 17 latex r bibtex sweave knitr

我不确定这是R,LaTeX还是BibTex问题.

我试图自动生成一个包含R包引文的.bib文件,然后在最后列出它们.我能够生成BibTex文件,我没有看到BibTex文件有任何问题,但是在编译PDF时没有出现这些条目.

我不确定R是否正确生成BibTex文件,如果某些LaTeX语法错误,或者BibTex文件是否需要预编译或其他什么.我注意到\bibliography{NOT A REAL FILENAME}会产生一个引用部分而没有抱怨,但我不认为这是问题所在.

最小的工作示例:

\documentclass[10pt]{amsart}
\usepackage[margin=1in, headheight=20pt, footskip=20pt]{geometry}

\begin{document}

<<label='Create References'>>=
require(knitr) # Needed for write_bib()

# Load some packages to the session:
require(xtable)
require(ggplot2)

# Select packages to cite:
citPkgs <- names(sessionInfo()$otherPkgs)
# Write the bibtex file:
write_bib(citPkgs, file="R-Pckgs.bib")
@

\nocite{*}
\bibliographystyle{plain}
\bibliography{R-Pckgs.bib}

\end{document}
Run Code Online (Sandbox Code Playgroud)

任何帮助或建议将不胜感激.

Jos*_*ien 7

只需更换\bibliography{R-Pckgs.bib}\bibliography{R-Pckgs},它应该工作的罚款.

在Windows 7上,使用最新的MikTeX安装和当前的R和R软件包,以下工作:

  1. 将可重现的示例放在名为"eg.Rnw"和编辑的文件中以删除无关的内容".bib"
  2. 启动R并导航到所在的目录"eg.Rnw".
  3. library(knitr); knit2pdf("eg.Rnw")

注:明明有从去许多工作流程*.Rnw*.pdf的,但如果你想使用knit2pdf()(至少),请确保您从包含的目录中运行它*.Rnw进行处理.