Category: | CGI programming |
Author/Contact Info | Joseph Harnish big_joe1008@yahoo.com |
Description: | This is very similar to the Bar graph maker. But this one will do a Pie chart. The same parameters apply.
title is optional on this. |
#!/usr/bin/perl ################################################################# # Author Joseph Harnish big_joe1008@yahoo.com # # Date 5/1/2001 # # # # This script is a wrapper for GD::Graph::Bars for use on # # web pages. It is a quicky that is used inside of an # # IFRAME. + # # # # Usage: piegraph.pl?cols=A,B,C&vals=1,2,3 # # It is required to have a "cols" and a "vals" but there are # # options you can also add. These options are: # + # title + # ################################################################# use GD::Graph::pie; use CGI; my $q = new CGI; my $cols = $q->param("cols"); my $title = $q->param("title"); my $vals = $q->param("vals"); my @col = split(/\,/, $cols); my @val = split(/\,/, $vals); my $temp; # Test the values comming in. foreach (@val) { $temp += $_; } if($temp != 100){ print $q->header; print "<h1>Error: The values must add up to 100</h1>Your total was +$temp<br>\n"; exit; } if($#col != $#val){ print $q->header; print "<b><h1>Error: Parameters are not balanced</h1></b>"; exit; } #create and display the graph my $graph = new GD::Graph::pie(200,200); my @data = ([@col], [@val]); $graph->set(title => "$title") if($title ne ''); $graph->set_label_font('ARIAL.TTF', 24); $graph->set_value_font('ARIAL.TTF', 24); print $q->header("image/png"); binmode STDOUT; print $graph->plot(\@data)->png; |
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: CGI pie-graph Maker
by CountZero (Bishop) on Dec 08, 2002 at 20:08 UTC |
Back to
Code Catacombs