Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
GD::Graph modules for Perl
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
This is GDGraph, a package to generate charts, using Lincoln Stein's GD.pm. See the documentation for some history and more information. The latest release is available from CPAN: http://www.cpan.org/. INSTALLATION Requirements: perl 5.6.0 GD >= 1.19 (recommended >= 1.23) GD::Text::Align (part of the GDTextUtils package) GD::Graph will not work with Perl 5.004. It most likely works with 5.005 (except for some odd problems with GD::Graph::Data::read(), which seem to be related to some obscure 5.005_03 bug, which I have not been able to track down), but I will no longer actively support it. to install: perl Makefile.PL make make install The tests are of limited value. The samples directory contains examples which also function as a test suite. To see the samples: make samples (use viewer to see samples/sample*.png or .gif) or cd samples make (use viewer to see sample*.png) The documentation available is contained in GD::Graph.pm, as pod. See it with perldoc GD::Graph after installation or perldoc -F Graph.pm before installation. TESTED PLATFORMS I have discontinued this list, because it is too hard to maintain. There is hardly any code in the module that could provide problems with inter-platform portability, but you never know. I will always test the modules against the latest stable perl (5.8.0 right now) and at least one older version (5.6.2). I will not explicitly test against older versions of Perl. I normally test against the newest version of GD, the last pre-2.0 version (1.41), and one version of the pre-PNG days (1.19). All of this happens on Linux. AUTHOR Martien Verbruggen firstname.lastname@example.org Currently maintained by Benjamin Warfield email@example.com FIRST PNG PORT as Chart::PNGgraph Steve Bonds firstname.lastname@example.org MOST IMPORTANT CHANGES SINCE VERSION 1.34 See file CHANGES MOST IMPORTANT CHANGES FOR VERSION 1.34 - Added GD::Graph::hbars, to create horizontal bar charts. Many thanks to brian d foy for doing almost all of the actual work. :) MOST IMPORTANT CHANGES FOR VERSION 1.30 - Added GD::Graph::Data as the preferred way of working with data sets. Internally all code has been changed to use these objects. - Many, many fundamental code changes, mainly to facilitate a future breakup of the code into separate Data, Chart and Graphics handling. All of this is internal, and there are not that many new options. (check the CHANGES file for more information) MOST IMPORTANT CHANGES FOR VERSION 1.20 - Namespace change to GD::Graph - No more links to GIF or PNG. We return a GD object now. It's the user's responsibility to save the right format. GIFgraph and (hopefully) Chart::PNGgraph will become wrappers around all this - Font support no longer part of these modules. Instead the package GDTextUtils is necessary. - Some bug fixes and extra options. MOST IMPORTANT CHANGES SINCE VERSION 1.10 - Namespace change from GIFgraph --> Chart::PNGgraph - No longer generates GIF format images due to Unisys LZW patent - Supports TrueType fonts MOST IMPORTANT CHANGES SINCE VERSION 1.04 - added bar_spacing option - added limited support for numerical X axis for equidistant X values (NOT for a real numerical graph!), thanks to Scott Prahl. - routines to automatically 'guess' nice upper and lower values for graphs have been replaced by one written by Scott Prahl MOST IMPORTANT CHANGES SINCE VERSION 1.03 - Added mixed type graph. GIFgraph::mixed options types and default_type - Added callback functionality to format y values option y_number_format - Added control over axis label placement option [xy]_label_position MOST IMPORTANT CHANGES SINCE VERSION 1.01 - Vertical printing of X axis labels - CHANGED DEFAULTS for zero_axis and zero_axis_only - Fixed problems with negative values, data ranges without 0, and printing of the x axis labels (I hope) - No more support for perl 5.003. Since perl 5.005 is out, and I don't have a 5.003 here to test all the time, I won't support it anymore. MOST IMPORTANT CHANGES SINCE VERSION 0.91 - Legends - Support for negative numbers - Ticks for X axis - line types and widths - Allow entries in data set to be undef (to skip them) - Changed 'zero' angle for pie charts (was right, now is front/bottom) - Definition of colours now possible. See PNGgraph::colour::read_rgb for details - See file CHANGES for more BUG FIXES IN THIS VERSION See file CHANGES REPORTING BUGS Please use rt.cpan.org to report any bugs with GD::Graph or GD::Text. Alternatively, you can email me, but I prefer it if you use the RT interface. When reporting a bug, please include the version of the module distribution you use, as well as your Perl version and platform (perl -V output will do). NOTES FOR WIN32 and Mac (pre OSX) These modules _should_ work on all platforms. Please direct any questions about the availability of these modules as PPM packages to ActiveState. I only make this available as a standard tar on CPAN. I have emailed ActiveState to ask what I was supposed to do, and have, until today, not received any answers. THANKS First of all. many, many thanks to Steve Bonds for adapting GIFgraph to version 1.20 of GD (the first version that did not support GIF anymore), and releasing it as Chart::PNGgraph. I really didn't have the time to look at it, and he stepped in and fixed the headache that Unisys had given me. Others who have contributed are mentioned in the documentation for GD::Graph in the AUTHOR section. COPYRIGHT GD::Graph Copyright (c) 1999-2002 Martien Verbruggen. All rights reserved. Chart::PNGgraph Copyright (c) 1999 Steve Bonds. All rights reserved. GIFgraph Copyright (c) 1995-1999 Martien Verbruggen. All rights reserved. This package is free software; you can redistribute it and/or modify it under the same terms as Perl itself. I really felt like adding a clause to the copyright that excluded Unisys and its employees from the use of any of my code, at least without a license bought from me. I decided against it for several reasons, the main one being that I would just feel too dirty doing that.