[R] Sweave, R and complex latex projects
Friedrich Leisch
friedrich.leisch at stat.uni-muenchen.de
Mon Oct 16 11:27:13 CEST 2006
>>>>> On Sat, 14 Oct 2006 23:00:27 +0100,
>>>>> Mark Wardle (MW) wrote:
> Hello all,
> I've been able to use R very successfully to run simple statistics and
> generate the plots I require.
> I've been evaluating Sweave, and have hit upon a small problem that I
> don't seem to be able to workaround. Sweave runs very well for single
> file latex documents, but I have a complex thesis made up of several
> parts and chapters. These are arranged with a master latex file and
> subdirectories with "\include"-ed latex fragments representing those
> parts/chapters, and I don't seem to be able to get Sweave to work properly.
> I've tried a number of approaches, including converting the master
> document into a Snw file itself, or even generating chapters manually
> chapter by chapter using Sweave and then "\include"ing the result into
> the master tex file. Unfortunately for the latter attempt, the the latex
> generated doesn't prepend the required path to the filename, and so
> latex looks for the pdfs and tex files in the wrong place - it looks in
> the "root" directory (where the master tex file is located) rather than
> the chapter subdirectory where all the files have been generated.
> I hope I'm not missing something obviously documented, but I can't see
> it in the Sweave docs. Is there an option to prepend a pathname to the
> filename of Sweave generated TeX and PDF documents?
Yes, simply set prefix.string to a path, not only a filename. E.g.,
\SweaveOpts{prefix.string=figs/myfile}
will place all figures in subdir "figs" (you have to create the
directory first manually) and call the separate files "myfile-XXX"
where XXX is number or name of the chunk.
> Do people use Sweave for complex multi-file latex projects, and what is
> the best approach? I'm almost tempted to keep R and Latex separate, and
> continue to run a R script to generate all of the dynamic tables/charts
> which are then "\input"ed, but I was rather attracted to the whole
> Sweave approach.
I personally mostly use Makefiles as suggested by Deepayan.
In addition there is \SweaveInput{} which works similar to Latex's own
\input{} command. There currently is no equivalent of \include{}.
HTH,
Fritz
--
-----------------------------------------------------------------------
Prof. Dr. Friedrich Leisch
Institut für Statistik Tel: (+49 89) 2180 3165
Ludwig-Maximilians-Universität Fax: (+49 89) 2180 5308
Ludwigstraße 33
D-80539 München http://www.stat.uni-muenchen.de/~leisch
More information about the R-help
mailing list