PGPLOT Version 5.0
All changes are intended to be backwards-compatible: i.e., existing
programs should run correctly when recompiled, and recompilation
should not be necessary. Some programs may give slightly different
results, owing to the bug fixes described below.
New installation procedure
The installation procedure for UNIX systems has changed substantially,
to allow automatic generation of the makefile and the device dispatch
routine (grexec.f
).
New C binding
This release of PGPLOT includes an experimental C binding for calling PGPLOT from C
programs. It consists of two files, a header file
cpgplot.h
that should be included in C programs that call
PGPLOT, and a system-dependent wrapper library that encapsulates the
manipulations necessary to call Fortran subroutines from C programs
(e.g, converting C null-terminated char arrays to Fortran character
strings). The wrapper library requires an ANSI-compliant C compiler,
and is not available on all systems (interlanguage calls are very
difficult or impossible on some systems).
Changes to device drivers
- PostScript:
the PostScript device driver (device types /PS, /VPS, /CPS, and
/VCPS) has been changed to handle the new PGIMAG routine. Use /CPS or /VCPS
for color images. One side-effect is that the monochrome types (/PS
and /VPS) now honor color representation changes requested by PGSCR, although they substitute a
grey level for the requested color.
- X-Window:
the X-Window driver has had major changes to speed it up,
make it more portable, and add new features. The window is now resizable,
and it is possible to specify that it stay up after the PGPLOT program
exits. The driver provides support for the new cursor features in PGBAND.
The number of colors reserved and the default placement of the window can
be specified in X resources.
- GIF (Graphics Interchange Format):
a new driver to create GIF files (type /GIF or /VGIF).
- PPM (Portable Pixmap):
a new driver to create PPM files (type /PPM or /VPPM).
- Many of the other drivers have been cleaned up to make them more
portable.
New routines
For details of all the PGPLOT routines, see file pgplot.doc or pgplot.html that the installation
procedures puts in the pgplot directory. The file pgplot.html can be
viewed with Mosaic (e.g., Mosaic
/usr/local/pgplot/pgplot.html
).
- PGSCIR, PGQCIR: set/query the range of color indices used by routines
PGGRAY and PGIMAG.
- PGERAS: erase screen without advancing to new page.
- PGCONL: for labelling contours drawn with PGCONT.
- PGBAND: new cursor routine, with many more features than PGCURS
including cross-hairs and rubber-bands (on devices that support this;
currently only X-window).
- PGIMAG: new routine (like PGGRAY) for color images.
- PGCTAB: for generating a color table for use with PGIMAG.
- PGSITF/PGQITF: set/query the image transfer function used by
routines PGGRAY and PGIMAG.
- PGPANL: to move to a different panel when the view surface has
been divided into panels with PGBEG or PGSUBP.
The pgdem* programs in pgplot/examples have been enhanced to
demonstrate the new routines, and there are new demos programs
(10--12).
Enhanced routines
- PGBOX: new options for forcing decimal or exponential labeling.
- PGBEG (PGBEGIN): now parses device specifications differently, so
that file names including slash characters do not need to be quoted.
- PGCONX: contours are now traced in a consistent direction
(clockwise or anticlockwise).
- PGGRAY: enhanced to allow use of linear, log, or square-root
mapping of array value onto image brightness (see PGSITF).
- PGPIXL: new algorithm makes smaller PS files that print faster.
- PGPAGE: no longer beeps when prompting for next page.
Bugs fixed
- PGNUMB: the FORM argument was ignored, but is now used as documented.
- PGPAP (PGPAPER) was boken in 4.9H; it now works as documented, and can
be used to change size between pages.
- PGQCR: now works as advertised (on most devices).
- Calling PGSCR before starting a new page (or defining
PGPLOT_BACKGROUND or PGPLOT_FOREGROUND) no longer creates a blank page
in the graphics file.
- Filled polygons are now correctly clipped against the window
on all devices; formerly they were not clipped on PostScript
and X-Window devices.
- The unit of line-width in PGSLW is now 0.005 inch on all devices.
- Sometimes markers centered exactly on the edge of the window were
not drawn when they should have been.
Tim Pearson, California Institute of Technology,
tjp·astro.caltech.edu
Copyright © 1995 California Institute of Technology