Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo


Tree [65245d] /

File Date Author Commit
t 2004-07-30 Doug Hunt Doug Hunt [7713e1] made compilation of plplot routines plsvect and...
.cvsignore 2003-04-22 Douglas Burke Douglas Burke [85e874] added files to .cvsignore
Changes 2003-11-22 Doug Hunt Doug Hunt [8448aa] Updated PLplot interface to perl 5.8.2 and plpl...
Makefile.PL 2004-07-30 Doug Hunt Doug Hunt [7713e1] made compilation of plplot routines plsvect and...
README 2003-03-03 Doug Hunt Doug Hunt [73fa44] Moved PLplot interface to PDL distro. Had been...
plplot.pd 2005-02-09 Rafael Laboissiere Rafael Laboissiere [65245d] Added plclear to the low-level PLplot interface.

Read Me


This is a simple perl/PDL interface to the PLplot plotting library.


I wrote this primarily for web graphics as an alternative to PDL::Graphics::PGPLOT.

The advantages of PLplot over PGPLOT are these:

-- It is written all in (generally well structured, comprehensible) C
   (so you don't need a FORTRAN compiler as for PGPLOT).
-- It is in current development
-- It has a simple autoconf installation with built-in PNG support

(The disadvantage is that it is missing some of PGPLOT's many features).

The interface consists of two levels.  A low level interface which maps closely to
the PLplot C interface, and a high level, object-oriented interface which is easier to 


use PDL:
use PDL::Graphics::PLplot;

# Line plot of two 1D PDLs $x and $y
my $pl = PDL::Graphics::PLplot->new (DEV => "png", FILE => "test1.png");
$pl->xyplot($x, $y, PLOTTYPE => 'LINE', COLOR => 'GREEN', 
	            TITLE => 'Sample plot', XLAB => 'frobnitz', YLAB => 'widgets/sec');

# Shade plot of a 2D PDL in $z
my $pl = PDL::Graphics::PLplot->new (DEV => 'png', FILE => "test2.png");
$pl->shadeplot ($z, $nsteps, BOX => [-1, 1, -1, 1], PALETTE => 'RAINBOW');
$pl->colorkey ($z, 'v', VIEWPORT => [0.93, 0.96, 0.15, 0.85]);

For more examples, see the test.pl file.


perl 5.6 or higher
PDL 2.3 or more recent
PLplot 5.1.0 (5.2.0 support is in the works...)

Important:  plplot *must* be compiled --with-double so that all floating
  point numbers used are doubles.  Install plplot similar to this:

# ./configure --with-double
# make
# make install

On some systems (IRIX, for one) it may be necessary to compile plplot
without fortran support:  --disable-f77.

Installation should be the normal:
perl Makefile.PL
make test
(as root)
make install
Best of luck!
Doug Hunt
Software Engineer III