Next: Reporting Bugs, Previous: Auxiliary Software, Up: Appendices
Several of the GNU plotting utilities were inspired by Unix plotting
utilities. A graph
utility and various plot filters were present
in the first releases of Unix from Bell Laboratories, going at least
as far back as the Version 4 distribution (1973). The first
supported display device was a Tektronix 611 storage scope. Most of the
work on tying the plot filters together and breaking out
device-dependent versions of libplot
was performed by
Lorinda Cherry.
By the time of Version 7 Unix (1979) and the subsequent Berkeley
releases, the package consisting of graph
, plot
,
spline
, and several device-dependent versions of libplot
was a standard Unix feature. Supported devices by the early 1980's
included Tektronix storage scopes, early graphics terminals,
200dpi electrostatic printer/plotters from Versatec and Varian,
and pen plotters from Hewlett–Packard.
In 1989, Rich Murphey wrote the first GNU
versions of graph
, plot
, and spline
, and the
earliest documentation. Richard Stallman further directed development
of the programs and provided editorial support for the documentation.
John Interrante, then of the
InterViews team at Stanford, generously provided the idraw
Postscript prologue now included in libplot
, and helpful
comments. The package as it stood in 1991 was distributed under the
name `GNU graphics'.
In 1995 Robert S. Maier took over
development of the package, and designed and wrote the current,
maximally device-independent, standalone version of libplot
.
He also rewrote graph
from scratch, turning it into a real-time
filter that would use the new library. He fleshed out spline
too, by adding support for splines in tension, periodicity, and cubic
Bessel interpolation.
libplot
now incorporates the X Window System code for
filling polygons and drawing wide polygonal lines and arcs. The code
is used when producing output in bitmap formats (e.g., PNG, PNM, and
pseudo-GIF). It was written by Brian Kelleher, Joel McCormack,
Todd Newman, Keith Packard, Robert Scheifler and Ken Whaley, who
worked for Digital Equipment Corp., MIT, and/or the X Consortium,
and is copyright © 1985–89 by the X Consortium.
Affinely transformed text strings are now generated and displayed by a
technique similar to that used by Alan Richardson in his
xvertext
package, for displaying rotated strings.
The pseudo-GIF support now in libplot
uses the `miGIF'
run-length encoding routines developed by
der Maus and ivo which are
copyright © 1998 by Hutchison Avenue Software Corporation.
The copyright notice and permission notice for the miGIF routines are
distributed with the source code distribution of the plotting
utilities.
Most development work on ode
was performed by
Nick Tufillaro in 1978–1994, on a sequence of
platforms that extended back to a PDP-11 running Version 4 Unix. In
1997 Robert Maier modified his 1994 version to agree with GNU
conventions on coding and command-line parsing, extended it to support
the full set of special functions supported by gnuplot
, and
extended the exception handling.
Many other people aided the development of the plotting utilities
package along the way. The Hershey vector fonts now in libplot
are of course based on the characters digitized in the mid to late
1960's by Allen V. Hershey, who deserves a vote of thanks.
Additional characters and/or marker symbols were taken from the SLAC
Unified Graphics System developed by Robert C. Beach in the
mid-1970's, and from the fonts designed by
Thomas Wolff for Ghostscript. The
interpolation algorithms used in spline
are based on the
algorithms of Alan K. Cline, as
described in his papers in the Apr. 1974 issue of
Communications of the ACM. The table-driven parser used in
tek2plot
was written at Berkeley in the mid-1980's by
Edward Moy. The `sagitta' algorithm used
in an extended form in libplot
for drawing circular and
elliptic arcs was developed by Peter Karow of URW and
Ken Turkowski of Apple.
Raymond Toy helped with the tick mark
spacing code in graph
and was the first to incorporate GNU
getopt
. Arthur Smith, formerly of LASSP at Cornell, provided
code for his xplot
utility. Nelson Beebe exhaustively tested the package installation process.
Robert Maier wrote the documentation, which now incorporates Nick
Tufillaro's ode
manual. Julie Sussmann checked over the
documentation for style and clarity.