As illustrated throughout this book, plt can generate high-quality printed output, as well as EPS (encapsulated PostScript) files that can be included in LATEX and other documents.
plt does not include drivers for non-PostScript printers. If your printer does not accept PostScript, however, you may be able to convert plt's PostScript output to your printer's printer language using ghostscript (a high-quality PostScript interpreter freely available from http://www.ghostscript.com/). ghostscript supports a wide variety of popular laser, ink-jet, and dot matrix printers, and can also convert PostScript into many popular image formats, including PNG, JPEG, TIFF (including fax formats), and PDF.
To understand how to make printed plots, a brief overview of how plt generates PostScript output may be helpful.
plt itself is a shell script that invokes a device-specific driver. Currently, these drivers are xplt, which draws into an X window created using xpltwin, and lwplt, which creates PostScript output. (The name lwplt comes from the Apple LaserWriter, which was the first commercially available PostScript printer.) Typically, you must use a command such as:
plt -T lw ... | lwcat -ps >plt-output.psto generate a complete PostScript file (in this example, plt-output.ps) suitable for printing. The use of the ``-T lw'' option selects the lwplt driver. (Some users prefer to select the driver by setting the PTERM environment variable rather than by a command-line option. Use whatever method you prefer.) The postprocessor, lwcat, is a shell script included with the plt package that appends its standard input (in this case, the output of (lw)plt) to a prolog file that contains definitions for the PostScript procedures used by lwplt. The name of the prolog file, usually /usr/lib/ps/plt.pro, is specified by the PROLOG variable set near the beginning of lwcat.
If you wish to print the output immediately, you may omit the -ps option and the output redirection from the lwcat command:
plt -T lw ... | lwcat
In this simplified version, the plot is immediately sent to the print spooler for printing (under Unix, GNU/Linux, or Mac OS X).
lwcat offers several other options:
-no | spool the output, but don't eject the page (use this option if you wish to overlay the output with additional material produced by another program, such as troff) |
-psv | collect Postscript in a temporary file and view with gv (ghostscript) |
-gv | same as -psv (default if run from a Cygwin/bash window under MS-Windows) |
-eps | write EPSF (encapsulated PostScript format) to the standard output (do not spool) |
write PDF to the standard output (see appendix C) | |
-png | write PNG to the standard output (see appendix C) |
Note that the output produced using -eps is only a close approximation to EPSF; it is acceptable to LATEX's epsfig package, at least.
By default, the output appears within a 6.75x6 inch window, the lower left corner of which is positioned 1 inch from the left edge and 3.5 inches from the bottom edge of the page. Additional lwcat options may be used to modify the size and location of the output:
-landscape | use landscape mode (rotate plot 90 degrees counterclockwise) |
-sq | plot in a 6x6 inch window, 1.25 inches from the left edge and 3.5 inches from the bottom edge |
-t | plot in a 6.25x6.25 inch window, positioned as for -sq |
-t2 | plot in a 6.25x4 inch window, positioned as for -sq |
-CinC | plot in a 4.75x3.15 inch window, positioned as for -sq |
-sq2 | plot in a 4.5x5.5 inch window, 2.5 inches from the left and bottom edges |
-v | plot in a 7x9.5 inch window, 0.75 inches from the left and bottom edges |
-v2 | plot in a 7x8.5 inch window, positioned as for -v |
-va4 | plot in a 190x275 mm window, centered on an A4 sheet |
Note the -landscape option changes the orientation of the plot, and not that of the plot window. Thus, for example, to print a landscape-format plot that covers the largest possible area on an 8.5x11 inch page, use both -landscape and -v; to cover the largest possible area on an A4 page with a landscape-format plot, use -landscape and -va4.
If none of these plot window sizes is what you want, there are several ways to define a custom plotting window for PostScript output:
-size fscl width height left-margin bottom-margin
The fscl argument is a factor applied to the point sizes for all font groups, and is independent of the scaling applied to the plot. Thus, if fscl is 1, all text appears at the point sizes specified in the font group definitions, or the defaults. As another example, if fscl is 0.5, and the point size for the title font group is 20, the title text will be printed in 10 point type.
The width, height, left-margin, and bottom-margin arguments are all given in units of inches (1 inch = 25.4 mm), and with reference to a portrait-format page (i.e., with the long edge vertical).
Note that plt's -size option is intended to be used instead of lwcat's window definition options; if both are used, the -size option has no effect.
By default, lwcat prints a single copy of the plt output. Multiple copies can be produced using the options -c2, -c3, -c4, -c5, or -c6; this will almost always be much faster than rerunning lwcat, since the PostScript is downloaded and rasterized only once when using these options. To print more than 6 copies, repeat or combine these options as needed, e.g., to print ten copies, use lwcat -c4 -c6 ... (or lwcat -c5 -c5, etc.)