This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
- NAME
- DESCRIPTION
- DISCLAIMER
- EXAMPLES
- Simple chart from a single data source
- Simple chart from multiple data sources
- Simple chart with multiple data sources and custom colors
- Example 4 : Simple chart with a different render type
- AUTHOR
- CONTRIBUTORS
- LICENSE
NAME
Chart::Clicker::Tutorial
DESCRIPTION
This document aims to provide a tutorial for using Chart::Clicker.
DISCLAIMER
This is a work in progress. If you find errors or would like to make contributions, drop me a line!
EXAMPLES
Simple chart from a single data source
# grab the needed modules
use Chart::Clicker;
use Chart::Clicker::Data::Series;
use Chart::Clicker::Data::DataSet;
# build the chart
my $chart = Chart::Clicker->new;
# build the series (static here, will usually be supplied arrayrefs from elsewhere)
my $series = Chart::Clicker::Data::Series->new(
keys => [ 1,2,3,4,5 ],
values => [ 52,74,52,82,14 ],
);
# build the dataset
my $dataset = Chart::Clicker::Data::DataSet->new(
series => [ $series ],
);
# add the dataset to the chart
$chart->add_to_datasets($dataset);
# draw and write the chart to a file
$chart->draw;
$chart->write('chart.png');
Simple chart from multiple data sources
use Chart::Clicker;
use Chart::Clicker::Data::Series;
use Chart::Clicker::Data::DataSet;
my $chart = Chart::Clicker->new;
# start an array that will hold the series data
my $series1 = Chart::Clicker::Data::Series->new(
keys => [ 1,2,3,4,5 ],
values => [ 52,74,52,82,14 ]
);
my $series2 = Chart::Clicker::Data::Series->new(
keys => [ 1,2,3,4,5 ],
values => [ 34,67,89,45,67 ]
);
# add the array of series data to the dataset
my $dataset = Chart::Clicker::Data::DataSet->new(
series => [ $series1, $series2 ]
);
$chart->add_to_datasets($dataset);
$chart->draw;
$chart->write('chart.png');
Simple chart with multiple data sources and custom colors
use Chart::Clicker;
use Chart::Clicker::Data::Series;
use Chart::Clicker::Data::DataSet;
# some new modules, these are only needed if you want to monkey with color changing
use Graphics::Color::RGB;
use Chart::Clicker::Drawing::ColorAllocator;
# build the color allocator
my $ca = Chart::Clicker::Drawing::ColorAllocator->new;
# this hash is simply here to make things readable and cleaner, you can always call G::C::R inline
my $red => Graphics::Color::RGB->new({
red =>.75, green =>0, blue =>0, alpha =>.8
});
my $green => Graphics::Color::RGB->new({
red => 0,green => .75, blue=> 0, alpha=>.8
});
my $blue => Graphics::Color::RGB->new({
red => 0, green => 0, blue => .75, alpha => .8
}),
my $chart = Chart::Clicker->new;
# Create an empty dataset that we can add to
my $dataset = Chart::Clicker::Data::DataSet->new;
$dataset->add_to_series(Chart::Clicker::Data::Series->new(
keys => [ 1,2,3,4,5 ],
values => [ 52,74,52,82,14 ]
));
# add a color - note that the order of colors and the order of the
# series must match, the first series will use the first color and so on
# see contexts and axes for alternate ways of doing this
$ca->add_to_colors($blue);
$dataset->add_to_series(Chart::Clicker::Data::Series->new(
keys => [ 1,2,3,4,5 ],
values => [ 34,67,89,45,67 ],
));
# add a second color
$ca->add_to_colors($colorset{red});
$dataset->add_to_series(Chart::Clicker::Data::Series->new(
keys => [ 1,2,3,4,5 ],
values => [ 11,22,33,44,55 ],
));
# add a third color
$ca->add_to_colors($colorset{green});
$chart->add_to_datasets($dataset);
# assign the color allocator to the chart
$chart->color_allocator($ca);
$chart->draw;
$chart->write('chart.png');
Example 4 : Simple chart with a different render type
use Chart::Clicker;
use Chart::Clicker::Data::Series;
use Chart::Clicker::Data::DataSet;
# add in the module of the renerer(s) you want to use
use Chart::Clicker::Renderer::Area;
my $chart=Chart::Clicker->new;
my $series=Chart::Clicker::Data::Series->new(
keys => [ 1,2,3,4,5 ],
values => [ 52,74,52,82,14 ]
);
my $dataset = Chart::Clicker::Data::DataSet->new(
series => [ $series ]
);
$chart->add_to_datasets($dataset);
# build the renderer to use
my $renderer = Chart::Clicker::Renderer::Area->new(
opacity => .75,
);
# assign the renderer to the default context
$chart->get_context('default')->renderer($renderer);
$chart->draw;
$chart->write('chart.png');
AUTHOR
Cory G Watson <gphat@cpan.org>
CONTRIBUTORS
Steve Bradford
LICENSE
You can redistribute and/or modify this code under the same terms as Perl itself.







