PLplot supports a variety of output devices, via a set of device drivers. Each driver is required to emulate a small set of low-level graphics primitives such as initialization, line draw and page advance, as well as be completely independent of the PLplot package as a whole. Thus a driver may be very simple, as in the case of the many black and white file drivers (tektronix, etc.). More complicated and/or color systems require a bit more effort by the driver, with the most effort required by an output device with a graphical user interface, including menus for screen dumps, palette manipulation, and so forth. At present only the tk driver does the latter on Unix systems. At present we aren't pursuing a Macintosh development effort due to a lack of time and expertise, but will assist anyone wanting to volunteer for the job.
A Computer Graphics Metafile driver is under development and may be finished by the time you read this (see the release notes to be sure). Note that if you always render to a PLplot metafile, you can always plrender them to new devices as they become available.
The list of available devices presented when starting PLplot (via plstar) is determined at compile-time. When installing PLplot you may wish to exclude devices not available on your system in order to reduce screen clutter. To include a specified device, simply define the appropriate macro constant when building PLplot (see the installation instructions for your system).
The device drivers for PLplot terminal output at present are given in Table 3-1 while drivers for file output are given in Table 3-2. The driver for OS/2 PM is available separately. See the section on OS/2 in the Appendix for more details.
Table 3-1. PLplot Terminal Output Devices
| Device | keyword | driver file |
|---|---|---|
| X-Window Screen | xwin | xwin.c |
| Tcl/Tk widget | tk | tk.c |
| Linux console VGA | vga | linuxvga.c |
| Xterm Window | xterm | tek.c |
| Tektronix Terminal (4010) | tekt | tek.c |
| Tektronix Terminal (4105/4107) | tek4107t | tek.c |
| MS-Kermit emulator | mskermit | tek.c |
| Versaterm vt100/tek emulator | versaterm | tek.c |
| VLT vt100/tek emulator | vlt | tek.c |
| Conex vt320/tek emulator | conex | tek.c |
| DG300 Terminal | dg300 | dg300.c |
| NeXT display (unsupported) | nx | next.c |
| GNOME display | gnome | gnome.c |
Table 3-2. PLplot File Output Devices
| Device | keyword | driver file |
|---|---|---|
| PLplot Native Meta-File | plmeta | plmeta.c |
| Tektronix File (4010) | tekf | tek.c |
| Tektronix File (4105/4107) | tek4107f | tek.c |
| PostScript File (monochrome) | ps | ps.c |
| PostScript File (color) | psc | ps.c |
| XFig file | xfig | xfig.c |
| LaserJet IIp Bitmap File | ljiip | ljiip.c |
| LaserJet II Bitmap File (150 dpi) | ljii | ljii.c |
| HP 7470 Plotter File (HPGL Cartridge Small Plotter) | hp7470 | hpgl.c |
| HP 7580 Plotter File (Large Plotter) | hp7580 | hpgl.c |
| HP Laser Jet, HPGL file | lj_hpgl | hpgl.c |
| Impress File | imp | impress.c |
| Portable bitmap file | pbm | pbm.c |
| Null device | null | null.c |
| JPEG file | jpeg | gd.c |
| PNG file | png | gd.c |