postscript {base} | R Documentation

## PostScript Graphics

### Description

`postscript` starts the graphics device driver for producing PostScript graphics.

The auxiliary function `ps.options` can be used to set and view (if called without arguments) default values for the arguments to `postscript`.

### Usage

    postscript(file = ifelse(onefile, "Rplots.ps", "Rplot
               onefile = TRUE,
               paper, family, bg, fg, width, height, horizontal, pointsize,
               pagecentre, print.it, command))

    ps.options(paper, horizontal, width, height, family, pointsize, bg, fg,
               onefile = TRUE, print.it = FALSE, append = FALSE,
               reset = FALSE, override.check = FALSE)
    .PostScript.Options

### Arguments

`file` | a character string giving the name of the file. If it is `""`, the output is piped to the command given by the argument `command`. If it is `"|cmd"`, the output is piped to the command given by ``cmd`'. For use with `onefile=FALSE` give a `printf` format such as `"Rplot%d.fig"` (the default in that case).
`...` | further options for `postscript()` :

`paper`

the size of paper in the printer. The choices are `"a4"`, `"letter"`, `"legal"` and `"executive"` (and these can be capitalized). Also, `"special"` can be used, when the `width` and `height` specify the paper size. A further choice is `"default"`, which is the default. If this is selected, the papersize is taken from the option `"papersize"` if that is set and to `"a4"` if it is unset or empty.

`horizontal` | the orientation of the printed image, a logical. Defaults to true, that is landscape orientation.
`width, height` | the width and height of the graphics region in inches. The default is to use the entire page less a 0.25 inch border.
`family` | the font family to be used. This must be one of `"AvantGarde"`, `"Bookman"`, `"Courier"`, `"Helvetica"`, `"Helvetica-Narrow"`, `"NewCenturySchoolbook"`, `"Palatino"` or `"Times"`.
`pointsize` | the default point size to be used.
`bg` | the default background color to be used.
`fg` | the default foreground color to be used.
`onefile` | logical: if true (the default) allow multiple figures in one file. If false, generate a file number containing the page number and give EPSF header and no `DocumentMedia` comment.
`pagecentre` | logical: should the device region be centred on the page: defaults to true.
`print.it` | logical: should the file be printed when the device is closed? (This only applies if `file` is a real file name.)
`command` | the command to be used for ``printing''. Defaults to option `"printcmd"`; this can also be selected as `"default"`.
`append` | logical; currently disregarded; just there for compatibility reasons.

### Details

`postscript(..)` opens the file `file` and the PostScript commands needed to plot any graphics requested are stored in that file. This file can then be printed on a suitable device to obtain hard copy.

A postscript plot can be printed via `postscript` in two ways.

1. Setting `print.it = TRUE` causes the command given in argument `command` to be called with argument `"file"` when the device is closed. Note that the plot file is not deleted unless command arranges to delete it.

2. `file=""` or `file="|cmd"` can be used to print using a pipe on systems that support ``popen`'.

The postscript produced by R is EPS (Encapsulated PostScript) compatible, and can be included into other documents, e.g. into LaTeX, using `\includegraphics{<filename>}`. For use in this way you will probably want to set `horizontal=FALSE, onefile=FALSE, paper="special"`.

### See Also

`Devices`, {`check.options` which is called from both `ps.options` and `postscript`}.

### Examples

    # open the file "foo.ps" for graphics output
    postscript("foo.ps")
    # produce the desired graph(s)
    dev.off()              # turn off the postscript device
    postscript("|lp -dlw")
    # produce the desired graph(s)
    dev.off()              # plot will appear on printer

    stopifnot(unlist(ps.options()) == unlist(.PostScript.Options))
    ps.options(bg = "pink")
    str(ps.options(reset = TRUE))

    ### --- error checking of arguments: ----
    ps.options(width=0:12, onefile=0, bg=pi)
    # override the check for 'onefile', but not the others:
    str(ps.options(width=0:12, onefile=1, bg=pi, override.check = c(F,T,F)))

[Package Contents]