
En algún otro artículo ya he resaltado la importancia de utilizar Sweave para mezclar código de R con texto y producir informes automáticos con resultados estadísticos y gráficos dinámicos. Sweave se puede utilizar desde LibreOffice, no sin ciertas dificultades, con el paquete
odfWeave, pero sin duda los mejores resultados se obtienen con el texto en formato
LaTeX.
Supongamos que tenemos una buena instalación de R y de algún programa de LaTeX para nuestro sistema operativo. Entonces se puede ejecutar Sweave desde la consola de R o incluso desde una GUI como RStudio, pero es mucho mejor ejecutarlo desde el propio editor de LaTeX que seguramente es donde hemos escrito el documento .Rnw que queremos compilar. Este es el objetivo: ejecutar Sweave sobre el documento que estamos editando sin salir del editor.
Sweave en un sistema Windows
Supongamos que utilizamos Texmaker con la distribución MikTeX de LaTeX, aunque el procedimiento es similar si utilizamos otro editor y otra distribución de LaTeX.
Sweave viene con la distribución estándar de R y se puede ejecutar desde su consola, pero yo prefiero compilar el documento directamente desde el editor. Para ello necesitamos un archivo llamado
Sweave.bat que se puede obtener en el
CRAN dentro del archivo
batchfiles_x.x-x.zip. Para instalar el archivo
Sweave.bat debemos dejarlo en alguna carpeta que sea accesible en nuestro PATH o añadir dicha carpeta al PATH.
Ahora ya deberíamos ser capaces de ejecutar este
.bat desde la consola, sólo necesitamos indicarle al editor donde encontrarlo.
Abrimos Texmaker y seleccionamos
Opciones -> Configurar Texmaker e incluir la orden:
Sweave.bat --pdf %.Rnw
en alguna de las categorías, por ejemplo como
Montaje rápido.
Un detalle importante: en Windows hay una dificultad añadida ya que necesitamos que LaTeX sea capaz de hallar el archivo
Sweave.sty. Para ello debemos añadir el siguiente path
C:\Archivos de programa\R\R-x.x.x\share\texmf
en las
MikTeX Options: Roots como se indica en esa página.
Sweave en un sistema Mac OS X
Los pasos para poner a punto un ordenador Mac OS X son incluso más sencillos que los explicados para un ordenador con Windows. Necesitamos el script
Sweave.sh que hallaremos en el
CRAN.
Para instalarlo, debemos copiarlo en
/usr/local/bin
y, dentro del programa Terminal, escribimos
sudo chmod +x /usr/local/bin/Sweave.sh
para hacerlo ejecutable.
Ahora ya podemos ejecutar este script desde la consola. Sin embargo, para que podamos ejecutarlo desde TEXshop, sólo hay que indicarle a TEXShop donde hallar dicho
Sweave.sh.
Abrimos TEXShop y buscamos
TEXShop→Preferences. Hacemos click en la pestaña
Misc y escribimos
/usr/local/bin/Sweave.sh −ld
en el campo
LaTeX Progam Personal Script.
Sweave en un sistema Linux
Para poner a punto un ordenador con Linux, el procedimiento es también muy sencillo, aunque los detalles pueden variar ligeramente dependiendo de la distribución y el editor utilizados. El ejemplo que explicaré se basa en Kubuntu Linux y el editor es Kile.
Para ejecutar Sweave desde el editor necesitamos el script
Sweave.sh que podemos hallar en el
CRAN. Luego instalaremos ese script en
/usr/local/bin
entonces abrimos la Konsole y escribimos
sudo chmod +x /usr/local/bin/Sweave.sh
para hacerlo ejecutable.
El siguiente paso es indicarle a Kile donde hallar este script. Abrimos Kile y hacemos click en
Settings→Configure Kile. Nos vamos a
Tools→Build y añadiremos una nueva herramienta que podemos llamar
Sweave. En la ventana superior escribiremos la orden
Sweave.sh y
−ld '%source'
en la de abajo.
Recordemos que el archivo
Sweave.sty debe ser accesible.
Más información en el artículo:
http://www.scribd.com/doc/6451985/Learning-to-Sweave-in-APA-Style