PGPLOT version 5.1.0
Version 5.1.0 has been tested with the following operating systems and
compilers. Drivers tested include: GI, GL, NU, PP, PS, TT, VT, WD, X2, XM,
XW (but not all combinations of drivers and systems have been tested
- SunOS 4.1.3_U1, Sun Fortran (f77) 1.3.1, GNU C (gcc) 2.7.0 (tested on SPARC 5).
- Solaris 2.5 (SunOS 5.5), Sun Fortran (f77) 3.0.1, Sun C (cc) 3.0.1 (tested on SPARC IPX).
- Solaris 2.5 (SunOS 5.5), Sun Fortran (f77) 3.0.1, GNU C (gcc) 2.7.2 (tested on SPARC IPX, SPARC Ultra-1).
- OpenVMS AXP V6.1, DEC FORTRAN V6.2, DEC C V4.0, DECwindows Motif 1.1 (tested on DEC 3000/M600).
- OpenVMS VAX V6.1, DEC FORTRAN V6.2, DEC C V4.0, DECwindows Motif 1.2 (tested on VAXstation 4000-90).
Changes in Version 5.1.0
- A major change in this version allows a program to have more than one
PGPLOT device open at once. The devices can be of the same type, e.g.,
two windows on an X-window workstation, or of different types, e.g., a
Tektronix terminal emulator and a PostScript file. Up to 8 devices may
be open at once. To support this new feature, four new routines have
and many routines have been modified internally.
At present, support for multiple devices of the
same type is not complete. Each PGPLOT device driver needs to be
modified to support multiple devices of the same type (i.e., served by
the same driver), or to explicitly prohibit opening more than one
device. Some of the older drivers have not yet been modified, and
these drivers may give incorrect results if you attempt to use them to
open two devices. There should never be any problem with unlike
devices served by different drivers, e.g., /XTERM and /PS.
- A new driver (xmdriv) and support
routines have been provided by Martin Shepherd to facilitate use of
PGPLOT in a Motif application. Note that this is an experimental
driver: feedback would be appreciated.
- The C function prototypes (cpgplot.h) and C
binding are now compatible with C++ as well as C.
A bug has been fixed in GRPOCL (support routine for PGPOLY). This could
cause overflow and incorrect plots if the world-coordinate values were
greater than about 1E18 (on most machines). A rounding-error has been fixed
in GRFA (support routine for PGPOLY); this could cause gaps between
polygons that should abut.
A bug has been fixed in GRPIXL (support routine for PGPIXL); this
should improve speed.
Two bugs have been fixed in the X-window driver (XWDRIV): it
would sometimes cause color maps to be set incorrectly; it
allowed only 255 colors, not 256.
The following device drivers have been moved into directory
pgplot/drivers/old, and cannot be selected in a normal installation. I
believe that no-one is still using these drivers: ardriv.f (Args image
display), grdriv.f (Grinnell image display), ikdriv (Ikon pixel
engine), lidriv (Liacom display), pkdriv.f and pzdriv.f (Peritek image
displays), vedriv.f (Versatec V80 printer).
List of Changes
- aaaread.me, copyright notice, makedoc, makehtml
- Updated date and version number.
- Added XMDRIV (Motif driver). Do not select this unless
you have the necessary Motif support and plan to write Motif
applications that call PGPLOT. Removed obsolete drivers as
- Added new subroutines. Added targets
pgplot.hlp (VMS help file);
pgmdemo (example Motif application).
Name changes: pgdisp is now pgdispd (directory);
pgview is now pgview.app (NeXT).
- (New file.) Script to generate VMS help file.
- (New file.) Script to generate LaTeX documentation.
- Changed name of directory from pgdisp to pgdispd to avoid
problems if you try to compile PGPLOT in the source directory.
- (New file.) List of changes since previous version.
- Added a third page to exercise more routines.
- Deleted file (note that this file needs to
be created as part of the installation).
- Added C++ wrapper to the generated cpgplot.h file. Added
const qualified declarations in the
- gidriv.f, ppdriv.f, psdriv.f, ttdriv, wddriv.f, x2driv.c
- Modified to prevent concurrent access.
- gidriv.f, ppdriv.f, psdriv.f, wddriv.f
- On some systems the decoding of environment variables
PGPLOT_xx_WIDTH, HEIGHT failed owing to a bad Fortran format.
Rewritten to avoid this problem.
- Modified to allow concurrent access (up to 8 devices).
- xmdriv.c, pgxwin.c, pgxwin.h
- New files: PGPLOT driver for Motif applications (from Martin
- Fix bug in handling query-color-representation.
- Fix bug: 256 colors allowed, not 255.
New directory: several obsolete drivers (and associated drivers.list)
have been moved from pgplot/drivers into this directory. These drivers
should not be used; contact Tim Pearson if you still have a need for
any of them.
New directory: support routines and example program for
- Some of the example programs have been modified to use PGOPEN/PGCLOS instead of PGBEG/PGEND.
- Changed the pseudo-random number generator to avoid
- `+' key now cycles between cursor modes (rubber-band,
- (New program) Demonstration of two open devices.
- (New program) This program demonstrates a method of
coding a user interface in PGPLOT. It requires the /XSERV device.
For a more professional approach to graphical user interfaces, consider
using the PGPLOT Motif driver.
- (Many pg routines)
- Changed the C function prototypes to use the
qualifier where appropriate. This makes it easier to use the
function prototypes with C++. Most arguments declared
float * or
char * are now
const char * (except for returned values).
- Modified to allow up to 8 concurrent devices.
- Rounding-error fix (thanks to Remko Scharroo; twice).
- New routine: initializes common block (avoids BLOCK DATA).
- Minor bug fix (Remko Scharroo).
- Rewrite to avoid potential overflow (thanks to Tomasz Plewa).
- Modified to allow up to 8 concurrent devices; many
variables changed from scalars to arrays, with new names.
- pgask.f, pgband.f, pgbbuf.f, pgbeg.f, pgbox.f, pgcirc.f,
pgebuf.f, pgend.f, pgerrb.f, pgerrx.f, pgerry.f, pggray.f, pghi2d.f,
pgiden.f, pgimag.f, pglen.f, pgmtxt.f, pgncur.f, pgnoto.f, pgpage.f, pgpanl.f,
pgpap.f, pgpoly.f, pgptxt.f, pgqah.f, pgqch.f, pgqcir.f, pgqcs.f, pgqfs.f,
pgqhs.f, pgqinf.f, pgqitf.f, pgqtbg.f, pgqtxt.f, pgqvp.f, pgqvsz.f, pgqwin.f,
pgrect.f, pgsah.f, pgsch.f, pgscir.f, pgsfs.f, pgshs.f, pgsitf.f,
pgstbg.f, pgsubp.f, pgsvp.f, pgswin.f, pgvsiz.f, pgvstd.f, pgvw.f, pgwnad.f
- Modified to allow multiple concurrent devices.
- (New routine.) Closes the currently selected graphics device.
- (New internal routine.) Initialize PGPLOT (this is to avoid
an illegal initialization of data in COMMON).
- (New routine.) Open (and select) a graphics device; unlike
PGBEG, this does not close any previously opened device.
- (New routine.) Returns the identifier of the currently selected
graphics device, for use with PGSLCT.
- (New routine.) Selects one of the open devices for graphics
- Changed version number to 5.1.0.
- Added checks on validity of arguments.
- Changes to configuration files to support compilation of the Motif
driver and example programs.
- Contents of directory updated for version 5.1.0 by Dave Crennell.
See file AAAREADME.
- The current version of gcc does not require system-specific variants
of any files. The variants for f2c have been moved into a subdirectory
pgplot/sys_linux/f77_src and the configuration files have been modified
- Contents of directory updated for version 5.0.3 by J. S. Salmento.
See file aaaread.me.
- Contents of directory updated for version 5.1.0 by C. T. Dum.
See file aaaread.me.
- Contents of directory updated for version 5.1.0 and NeXtStep 3.0 by
Allyn Tennant. Configuration file for GNU Fortran (g77) added. See file aaaread.me.
- Added -R options to the ld commands in the configuration files; these
help the demo programs to find the PGPLOT shared library at run time (assuming
you haven't moved it after compilation.)
- Changed version number from 1.7 to 1.8 in all .conf files.
- build.com, compile.com
- Added new routines to shared library transfer vector. Added
instructions for linking with Motif library when needed.
- This routine formerly converted all PGPLOT device specifications
to uppercase for VMS. It now preserves case (VMS file and
device names are not case-sensitive, but some PGPLOT device
specifications can be).
- Added new target (pgmdemo) to compile/install the Motif
- Corrected to use the version of cpgplot.h in the current
directory; set correct protection on generated files.
- Changed name of directory from PGDISP to PGDISPD.
- (New file.) Used in compilation of the Motif example program.
- New directory: from Phil Seeger. Port of
version 5.1.0 to MS PowerStation Fortran/Windows95 (or WindowsNT)
environment. See file aaaread.me.
Tim Pearson, California Institute of Technology,
Copyright © 1996 California Institute of Technology