Sweave: diferència entre les revisions

Salta a la navegació Salta a la cerca
Línia 225: Línia 225:
== Procesamiento ==
== Procesamiento ==


El procesamiento (compilado) de un archivo de Sweave se compone de un único paso si se trabajo con código HTML, y de dos pasos si se trabaja con código [[Latex|LaTeX]]:
El procesamiento (compilado) de un archivo de Sweave se compone de un único paso si se trabajo con código HTML, y de dos pasos si se trabaja con código [[Latex|LaTeX]].


* La función Sweave() de [[R]], que evaluará los ''chunks'' con código de R y convertirá el archivo '''.Rnw''' a un archivo '''.tex'''  o '''.html''' según el ''driver'' que se use. Estos ficheros se generarán en el ''working directory'', que se puede descubrir con la función:
=== Paso 1 ===
 
Ejecutar la función Sweave() de [[R]], que evaluará los ''chunks'' con código de R y convertirá el archivo '''.Rnw''' a un archivo '''.tex'''  o '''.html''' según el ''driver'' que se use. Estos ficheros se generarán en el ''working directory'', que se puede descubrir con la función:


  getwd()
  getwd()
Línia 241: Línia 243:
  Sweave("c:/rutacompleta/nombredelarchivo.Rnw")
  Sweave("c:/rutacompleta/nombredelarchivo.Rnw")


Con el código anterior obtendremos un fichero '''.tex''' que deberá ser compilado como se explica en el punto siguiente.  
Con el código anterior obtendremos un fichero '''.tex''' que deberá ser compilado como se explica en el [[Sweave#Paso_2| segundo paso]].  


Sin embargo, si no estamos trabajando en [[Latex|LaTeX]] sino en HTML, deberemos primero obtener el [http://cran.r-project.org/doc/packages/R2HTML.pdf paquete ''R2HTML''] (tipo 3) y luego:
Sin embargo, si no estamos trabajando en [[Latex|LaTeX]] sino en HTML, deberemos primero obtener el [http://cran.r-project.org/doc/packages/R2HTML.pdf paquete ''R2HTML''] (tipo 3) y luego:
Línia 250: Línia 252:
Con el código anterior obtenemos directamente un fichero '''.html''' ya completo y visualizable con cualquier navegador.
Con el código anterior obtenemos directamente un fichero '''.html''' ya completo y visualizable con cualquier navegador.


* Si estamos trabajando con código [[Latex|LaTeX]] hay que realizar un segundo paso, que consiste en compilar el documento '''.tex''' resultante del paso anterior para obtener, como es habitual en [[Latex|LaTeX]], archivos '''.dvi''', '''.ps''' o '''.pdf'''.
=== Paso 2 ===
 
Si estamos trabajando con código [[Latex|LaTeX]] hay que realizar un segundo paso, que consiste en compilar el documento '''.tex''' resultante del paso anterior para obtener, como es habitual en [[Latex|LaTeX]], archivos '''.dvi''', '''.ps''' o '''.pdf'''.


En sistemas M$ hay que realizar los dos pasos de forma independiente, ya sea con [[Emacs]] o con [http://www.winedt.com WinEdt].  
En sistemas M$ hay que realizar los dos pasos de forma independiente, ya sea con [[Emacs]] o con [http://www.winedt.com WinEdt].  
Línia 256: Línia 260:
En sistemas GNU/Linux, aunque también es posible realizar los pasos por separado, ambas tareas pueden automatizarse con el sistema que se explica a continuación.
En sistemas GNU/Linux, aunque también es posible realizar los pasos por separado, ambas tareas pueden automatizarse con el sistema que se explica a continuación.


=== Automatización del proceso con [[Emacs]] bajo GNU/Linux ===
== Automatización del proceso con [[Emacs]] bajo GNU/Linux ==


Lo siguiente es sólo necesario si trabajamos con código [[Latex|LaTeX]], pues la integración con HTML se realiza en un solo paso como se ha explicado anteriormente.
Lo siguiente es sólo necesario si trabajamos con código [[Latex|LaTeX]], pues la integración con HTML se realiza en un solo paso como se ha explicado anteriormente.
Línia 289: Línia 293:


La compilación realizada con el procedimiento descrito tiene además otras ventajas, como por ejemplo que compila tantas veces como sea necesario el archivo '''.tex''' hasta que esté completo, lo que '''evita tener que recompilar manualmente''' los archivos que contienen, por ejemplo, referencias bibliográficas tal y como se explica en el [[Latex#Bibliograf.C3.ADas_.28BibTex.29 | artículo correspondiente]].
La compilación realizada con el procedimiento descrito tiene además otras ventajas, como por ejemplo que compila tantas veces como sea necesario el archivo '''.tex''' hasta que esté completo, lo que '''evita tener que recompilar manualmente''' los archivos que contienen, por ejemplo, referencias bibliográficas tal y como se explica en el [[Latex#Bibliograf.C3.ADas_.28BibTex.29 | artículo correspondiente]].
== La función ''Stangle'' ==
Permite extraer todo el código de [[R]] de un archivo Sweave (ya sea mezclado con [[Latex|LaTeX]] o con HTML) y guardarlo todo en un archivo '''.R''', que contendrá sólamente código de [[R]]. [[Sweave#Paso_1 | De nuevo]], este archivo se guardará en el ''working directory''' actual. La sintaxis de la función es la siguiente:
Stangle("nombrearchivo.Rnw")


== Enlaces de interés ==
== Enlaces de interés ==

Menú de navegació