GD-Graph-splined
view release on metacpan or search on metacpan
lib/GD/Graph/splined.pm view on Meta::CPAN
$x, $y];
}
else {
$self->{_hotspots}->[$ds]->[$i] = ["poly",
$poly->getPt($i),
@{$bottom[$i]},
@{$bottom[$i-1]},
$poly->getPt($i-1),
$poly->getPt($i)];
}
}
my $spline = $poly->addControlPoints->toSpline;
$self->{graph}->polydraw($spline,$dsci);
# Draw the accent lines
if (defined $brci and
($self->{right} - $self->{left})/@values > $self->{accent_treshold}
) {
for (my $i = 1; $i < @values - 1; $i++) {
my $value = $values[$i];
## XXX Why don't I need this line?
##next unless defined $value;
my ($x, $y) = $poly->getPt($i);
my $bottom = $bottom[$i]->[1];
$self->{graph}->dashedLine($x, $y, $x, $bottom, $brci);
}
}
return $ds
}
'End of module';
__END__
=head1 NAME
GD::Graph::splined - Smooth line graphs with GD::Graph
=head1 SYNOPSIS
use strict;
use GD::Graph::splined;
my @data = (
["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"],
[ 5, 12, 24, 33, 19,undef, 6, 15, 21],
[ 1, 2, 5, 6, 3, 1.5, 1, 3, 4]
);
my $graph = GD::Graph::splined->new;
$graph->set(
x_label => 'X Label',
y_label => 'Y label',
title => 'A Splined Graph',
);
$graph->set_legend( 'one', 'two' );
$graph->plot(\@data);
open(OUT, ">splined.png") or die $!;
binmode OUT;
print OUT $graph->gd->png;
close OUT;
=head1 DESCRIPTION
A L<GD::Graph|GD::Graph> module that can be treated as an C<area> graph, but
renders splined (smoothed) line graphs.
See L<GD::Graph|GD::Graph> for more details of how to produce graphs with GD.
=head1 BUGS
Please use the CPAN Request Tracker to lodge bugs: L<http://rt.cpan.org|http://rt.cpan.org>.
=head1 SEE ALSO
L<GD::Graph>, L<GD::Graph::area>, L<GD::Polyline>, L<GD>.
=head1 AUTHOR AND COPYRIGHT
Lee Goddard added to Martien Verbruggen's L<GD::Graph::area|GD::Graph::area> module
the ability to use Daniel J Harasty's L<GD::Polyline> module.
Thus, Copyright (c) 1995-2000 Martien Verbruggen
with parts copyright (c) 2006 Lee Goddard (lgoddard -at- cpan -dot- org).
This software is made available under the same terms as L<GD::Graph|GD::Graph>.
( run in 2.112 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )