texto - r markdown subindex
¿Cómo crear automáticamente citas de BibTex para paquetes R en archivos knitr? (2)
No estoy seguro de si esto es un problema de R, LaTeX o BibTex.
Estoy intentando generar automáticamente un archivo .bib que contiene citas para los paquetes R y luego los enumero al final. Puedo generar el archivo BibTex y no veo nada malo en el archivo BibTex, pero las entradas no aparecen cuando compilo el PDF.
No estoy seguro si R no está produciendo un archivo BibTex correctamente, si alguna sintaxis de LaTeX es incorrecta, o si el archivo BibTex necesita ser precompilado o lo que sea. Noté que /bibliography{NOT A REAL FILENAME}
producirá una sección de Referencias sin quejarme, pero no creo que ese sea el problema.
Ejemplo de trabajo mínimo:
/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}
Cualquier ayuda o sugerencias serán apreciadas.
Agregue un /nocite{dummycite}
a su documento - para crear una cita para que se imprima la bibliografía.
Tenga en cuenta que esto es obsoleto si ya tiene otra cita en su documento.
Simplemente reemplace /bibliography{R-Pckgs.bib}
con /bibliography{R-Pckgs}
, y debería funcionar bien.
En Windows 7, con una instalación MikTeX actualizada y paquetes R y R actuales, funcionó lo siguiente:
- Coloque su ejemplo reproducible en un archivo llamado
"eg.Rnw"
y"eg.Rnw"
para eliminar el".bib"
- Ejecute R y navegue al directorio en el que se encuentra
"eg.Rnw"
. - Hacer
library(knitr); knit2pdf("eg.Rnw")
library(knitr); knit2pdf("eg.Rnw")
Nota: obviamente hay muchos flujos de trabajo para pasar de *.Rnw
a *.pdf
, pero si desea usar knit2pdf()
(al menos), asegúrese de ejecutarlo desde el directorio que contiene el *.Rnw
para procesarlo.