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: John Hendy
Subject: Re: [O] Including multiple plots resulting from a loop of R code in LaTeX
Date: Sun, 26 Aug 2012 21:58:16 -0500

On Thu, Aug 23, 2012 at 11:43 AM, Eric Schulte <address@hidden> wrote:
> John Hendy <address@hidden> writes:
>
>> I'm conducting some neural network analysis, and the results are
>> highly dependent on the random seed set prior to creating the model. I
>> loop through seeds 1-500, storing the predicted values in one data
>> frame and a table of mean sum of squared errors in another table.
>>
>> Then, I use ggplot to create only the 10 or so plots with the lowest
>> error. The loop is something like this:
>>
>> ----------
>> for(i in 1:10) {
>>
>> filename <- paste("neuralnet-","-seed-",as.character(mse[i,1]),".pdf", 
>> sep="")
>>
>> pdf(filename, width=12, height=8)
>>
>> [ggplot code]
>>
>> dev.off()
>> ----------
>>
>> What I want to know is how to include the resultant files in LaTeX
>> export. Since my model runs and then sorts by error, I don't know
>> which seeds produce the best files beforehand, so I'd have to look at
>> the error table and manually insert the plot names by hand. Changing
>> results means changing file names by hand again.
>>
>> Any suggestions for things like this where the output of a babel block
>> is not a single file?
>>
>
> Have you tried using header arguments like the following.
>
> :results output raw :exports results
>
> and then printing the file names (including the Org-mode link syntax) to
> STDOUT from within your R code block.

Trying this, but am hung up on directing to STDOUT. I tried just using:

,---
| print(paste("[../plots/",filename,"]",sep=""))
`---

but just ended up with a bunch of strings in the pdf output. In
googling around I found this on SO:
- 
http://stackoverflow.com/questions/4112896/how-can-i-redirect-r-warning-messages-to-stdout

So I tried:

,---
| sink(stdout(),print(paste("[../plots/",filename,"]",sep="")))
`---

But nothing gets printed into pdf at all.

---

Actually, I revisited the above plaint print() statement to see what's
going on and the #+results block contains files like so:

,---
| [1] "[../plots/filename.pdf]"
`---

How do I strip the [1] and the quotes?


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



reply via email to

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