Re: R-beta: postscript in R and R

Douglas Bates (
30 Apr 1998 15:15:31 -0500

To: Thomas Lumley <>
Subject: Re: R-beta: postscript in R and R
From: Douglas Bates <>
Date: 30 Apr 1998 15:15:31 -0500
In-Reply-To: Thomas Lumley's message of Sun, 26 Apr 1998 12:07:40 -0700 (PDT)

Thomas Lumley <> writes:

> On Sat, 25 Apr 1998, Helgi Tomasson wrote: 
> > I am creating postscript-graphics in R.  When I import them into
> >  a LATEX document it is impossible to get the caption close 
> >  to the figure.  I run the same program in Splus, and no problem
> > of getting the caption just below the figure.  Another thing,
> > the ps file that S created is only 10% of the size of the file
> >  that R created.  What is wrong?  Are there some parameters to
> >  be set?
> I haven't noticed this problem with figures from R in LaTeX. Which version
> of R is it, and do you have a specific example?
> You can always fix the amount of space a PostScript file takes up in LaTeX
> by altering its bounding box.  The bounding box is given by a line
> %%BoundingBox: 46 169 549 673
> near the top of the PostScript file, and it specifies the amount of the
> page that the graph actually occupies, measured in 72ths of an inch, from
> the lower left corner of the paper. The four numbers are the distances to
> the left, bottom, right and top margins of the picture.
> The \epsfig{} command in LaTeX lets you specify a new bounding box if the
> one in the file is missing or incorrect, or you could edit the file.
> Of course it's better if the bounding box is right to begin with.

Sorry to get into this late - I have been off at a conference.  

The Aladdin distribution of ghostscript contains a script called
ps2epsi that re-calculates and inserts a tighter bounding box.  It
does this essentially by rendering the postscript code on a raster
then determining a minimal bounding box for the raster.  

A disadvantage of using ps2epsi is that it also includes the raster
image in the file so the figure can be rendered in a word processor,
for example.  If you don't need that you can strip the file down a bit
using a script that Bill Venables and I called ps2eps.

if [ $# -eq 2 ]
	outfile=`basename ${infile} .ps`.eps
ps2epsi $infile /tmp/X$$.epsi
sed -e '/^%%BeginPreview/,/^%%EndPreview/d' -e '/^%%EOF/d' < /tmp/X$$.epsi > $outfile
rm -f /tmp/X$$.epsi
exit 0
r-help mailing list -- Read
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: