Announcement of PLplot-5.3.1

Release Notes

This release comes five months after the previous one with relatively few user-visible changes. However, a big amount work was done to improve the internals of the distribution, in particular as regards the Autotools (Autoconf, Automake, Libtool) support. The Java, C++, and Octave bindings and examples have been improved, and new vector plotting functions added to the API. For the detailed list of changes, see the ChangeLog of CVS activity.



  • New plvect function to plot arrows using the function evaluator approach and new plsvect function to set the style of the arrow used by plarrows. Examples x22* illustrate the use of these new functions.

  • Add non-rectangular x-y limits to plsurf (plsurf3dl) and plot3d (plot3dcl).

Language Bindings

  • The library libplplotf77 is split, such that there is a pure fortran source library (still called libplplotf77) which wraps a pure C source library (libplplotf77c) which in turn wraps libplplot. This change means an end to worrying about using FLIBS to specify how to link a library with combined fortran and C source code, improving the portability.

  • The Java and Python bindings have now a common Swig interface definition.

  • Dropped the requirement for Matwrap for building the Octave bindings from the distribution tarball. The Octave binding requires Octave version 2.1.57 or later to work

  • There are now two different Perl bindings for PLplot: Graphics::PLplot and PDL::Graphics::PLplot. All the example files have been ported to the later module (files examples/perl/x*.pl).


  • Added FreeType support to the wingcc driver.


  • The configuration system has undergone a total overhaul. The script, together with, have been broken into logical pieces and put under the cf/ directory. The Autoconf code has been modernized and its maintainability improved.

  • Building from CVS sources requires Automake version 1.8.2 or later.

  • The reconfig script does not exist anymore, because the command ./config.status --recheck provides the same functionality.

  • Building the DocBook documentation (info and man page forms) requires the docbook2x version 0.8.2 or later.

Library core

  • Several memory leak problems are fixed both in the core and in the examples. We are heading towards a valgrind-clean code base for PLplot.


  • New chapter Deploying programs that use PLplot, containing information on the issue of delivering programs that use PLplot.

  • New chapter API compatibility definition, which presents the formal definition of what is considered to be in the PLplot library API.

Examples and Tests

  • Example x14 works identically in C, C++, Python, Java and Tcl bindings.

  • The tests can be exercised with the make check command.

Rafael Laboissiere, 2004-06-25

PLplot home page | Text version | XML source | Makefile