★ wanayoo — archive 1999 http://www.gnu.org/software/plotutils/plotutils.htmlNouvelle recherche | Portail wanayoo

The plotutils Package

 [image of the Head of a GNU]

The GNU plotutils package contains software for both programmers and technically oriented users. Its centerpiece is libplot/libplotter, a powerful C/C++ function library for exporting 2-D vector graphics in many file formats. It can also do vector graphics animations. Besides libplot/libplotter, the package contains command-line programs for plotting scientific data.

The current version of the package is 2.3, released October 1999. It can be installed on GNU/Linux, FreeBSD, and Unix systems.

The libplot library, and applications built on it, can now export graphics files in WebCGM format. WebCGM is a format for 2-D vector graphics that has been recommended by the Graphics Activity of the W3 Consortium.
The libplot library is now equipped with thread-safe APIs (application programming interfaces). The use of Posix threads, if available, is supported.

The plotutils package comes with a 165-page manual. Here is an older version of the manual.

The package is free software. The source code for the package is distributed as a gzipped tar file, 3.1 megabytes in size. Here is information on obtaining the source code.

What command-line programs does the package contain?

It includes

We developed these command-line programs to replace the Unix command-line programs graph, plot, and spline. The GNU versions are far more powerful, and are free software.

What graphics library does the package contain?

GNU libplot, a C/C++ function library for device-independent 2-D vector graphics. GNU libplot is compatible with the traditional Unix libplot library, but is far more powerful. It is installed as part of the package. On systems that support shared libraries, it is installed as a shared library. A C++ class library called libplotter, which provides an object-oriented interface to libplot's functionality, is optionally installed as well.

GNU libplot and libplotter support all the output formats mentioned above (X11, PNM, pseudo-GIF, WebCGM, Illustrator format, idraw-editable Postscript, PCL 5, Fig format, HP-GL/2, Tektronix, and GNU Metafile). They can produce animated pseudo-GIFs, and smooth, double-buffered animations on any X Window System display. The libplot/libplotter imaging model is similar to Postscript's. In any output format, they can draw the following.

When using libplot or libplotter, a programmer draws vector graphics in a `user frame', rather than in the device frame. As in Postscript, the user frame may be transformed into the device frame by an arbitrary affine map. Scaling, rotation, shearing, and translation are all supported.

Does the package really produce GIF files?

Even though the plotutils package can produce what appear to be GIFs and animated GIFs, it does not transgress the patents covering the LZW compression algorithm. The reason is that instead of LZW encoding, it uses run-length encoding, which is not patentable. To avoid confusion, we call the files produced by the package `pseudo-GIF files'.

What related contributed software is available?

A simple piechart plotting program that illustrates the use of GNU libplot is available here. It was contributed by Bernhard Reiter. Also, Juergen Pfeifer has developed an Ada95 binding for libplot. Mike Miller has developed a SWIG wrapper for libplot, which lets libplot functions be called from Python. It is available here. Recently, Piotr Klaban has developed a Perl module for libplot.

Who developed the plotutils package?

The two primary authors of the plotutils package are Robert Maier and Nick Tufillaro (who developed ode). Many other people contributed, however. The rasterization code used by the PNM and pseudo-GIF drivers, which is distributed as a separate package, is based on the vector graphics code in the sample X Window System server.


Visit the Scientific Applications on Linux page, the Linux Software Encyclopedia page, and the Linux Applications and Utilities page. (Unfortunately, these pages refer to GNU/Linux as ``Linux''.)


Return to GNU's home page.

Please send FSF & GNU inquiries & questions to gnu@gnu.org. There are also other ways to contact the FSF.

Please send comments on these web pages to webmasters@www.gnu.org, send other questions to gnu@gnu.org.

Copyright (C) 1999 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.

Updated: 11 Dec 1999 jonas