emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Including multiple plots resulting from a loop of R code in LaTe


From: Eric Schulte
Subject: Re: [O] Including multiple plots resulting from a loop of R code in LaTeX
Date: Mon, 27 Aug 2012 14:50:37 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2.50 (gnu/linux)

John Hendy <address@hidden> writes:

>> Disregard again... adding multiple newlines with cat() doesn't work,
>> but I had the idea to do:
>>
>> cat(paste("[[../plots/",filename,"]]",sep=""), sep="\n")
>> cat("\n")
>>
>> Works great. I suppose I can use this to add #+attr_latex options as
>> well as captions. Cool stuff.
>
> Getting a bit of odd behavior on LaTeX export. Here's the gist of my
> block below. I've iterated through various model parameters and saved
> the results to filenames based on those parameters. These are stored
> in a vector =filenames=.
>
> #+begin_src R :session model :results output raw :exports results
>
> for(i in 1:nrow(filenames)) {
>
> # insert section header
> cat(paste("*Param1 = ", as.character(params[i, 1]),
>           "; Param2 = ", as.character(params[i, 2]),"*", sep=""))
> cat("\n\n")
> cat("#+begin_center")
> cat("\n")
>
> read.csv(filename)
>
> for(j in 1:5) {
>
> ggplot code
>
> pdf(output-filename)
> print(p)
> dev.off()
>
> cat(paste("[[../plots/",output-filename,"]]",sep=""), sep="\n")
> cat("\n")
>
> } # end plotting loop
>
> cat("#+end_center")
> cat("\n\n")
>
> } # end filename cycling loop
>
> #+end_src
>
> I get results like so:
>
> #+RESULTS:
> *Param1 = 4; Param2 = 0.025*
>
>
> #+begin_center
> [[../plots/filename1.pdf]]
>
> [[../plots/filename2.pdf]]
>
> [[../plots/filename3.pdf]]
>
> [[../plots/filename4.pdf]]
>
> [[../plots/filename5.pdf]]
>
> #+end_center
>
> There are six of these sections, however when I do C-c C-c on the
> block and then C-c C-e p to export to LaTeX, I get duplicate sections
> back to back. I have to delete the entire results section and only do
> C-c C-e p with an empty results section to have the duplicate removed.
>

Try replacing ":results output raw" with ":results output org"

>
> Why might this be?
>

Because Babel is not able to remove the old results of "raw" output as
the output has no obvious delimiters.  However "org" output should be
wrapped in begin/end_org blocks allowing old output to be cleaned up.

Best,

>
>
> John
>
>
>>
>> Thanks!
>>
>>>
>>>
>>> Thanks,
>>> John
>>>
>>>>
>>>> If I understand correctly that should result in the behavior you're
>>>> after.
>>>>
>>>> Best,
>>>>
>>>>>
>>>>>
>>>>> Thanks,
>>>>> John
>>>>>
>>>>
>>>> --
>>>> Eric Schulte
>>>> http://cs.unm.edu/~eschulte
>

-- 
Eric Schulte
http://cs.unm.edu/~eschulte



reply via email to

[Prev in Thread] Current Thread [Next in Thread]