Skip to content

Is there some way to append to a pdf after its device has been closed?

6 messages · Alex Pine, jim holtman, Stephan Kolassa +2 more

#
Why don't you just output all the plot to a single file by opening
'pdf', doing the plots, 'dev.off()'.  Why do you need so many files
open?
On Mon, Dec 29, 2008 at 2:57 PM, Alex Pine <alex.pine at nyu.edu> wrote:

  
    
#
Hi Alex,

you can have R execute OS commands using system(), perhaps you can call 
pdfmerge that way.

Or (admittedly less elegantly), you can use LaTeX with the pdfpages 
package, either using Sweave or system(pdflatex ...).

Good luck,
Stephan


Alex Pine schrieb:
#
On Mon, 29-Dec-2008 at 02:57PM -0500, Alex Pine wrote:
|> Hello all,
|> 

|> My question has to do with writing to pdf/ps files. Currently, my R
|> program requires 100+ pdf devices to be open, which is over the
|> limit of 64 devices that can be open at the same time, causing R to
|> throw an exception. My problem could be solved if I could append to
|> a pdf file after its initial device has been closed, but so far I

If you told us why you've closed the device, we'd understand what your
problem is.  Why can't you keep the same device open and as many pages
as you like will be appended before you do the dev.off() thing?  You
can change par settings for the individual pages if necessary.

[...]

HTH
#
Is there some reason you can't reverse the loops? Then you'd have
only one device open at a time.

for ( i in length(obj.list) ) {
     dev.set( device.list( j ) )
     for( j in iters) {
         # do plotting and other stuff for this list member
    }
     # close current device
 }


Sarah
On Tue, Dec 30, 2008 at 11:21 AM, Alex Pine <alex.pine at nyu.edu> wrote: