DOKK / manpages / debian 11 / libchart-clicker-perl / Chart::Clicker::Tutorial.3pm.en
Chart::Clicker::Tutorial(3pm) User Contributed Perl Documentation Chart::Clicker::Tutorial(3pm)

Chart::Clicker::Tutorial - A Tutorial for using Chart::Clicker

version 2.90

This document aims to provide a tutorial for using Chart::Clicker.

    # 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);
    # write the chart to a file
    $chart->write_output('chart.png');

    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->write_output('chart.png');

    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($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($green);
    $chart->add_to_datasets($dataset);
    # assign the color allocator to the chart
    $chart->color_allocator($ca);
    $chart->write_output('chart.png');

    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->set_renderer($renderer);
    $chart->write_output('chart.png');

  my $chart = Chart::Clicker->new(width => 1024, height => 768);

  my $chart = Chart::Clicker->new(format => 'pdf');
  # Create the rest of your chart normally
  $chart->write_output('chart.pdf');

  my $chart = Chart::Clicker->new;
  # hide the legend
  $chart->legend->visible(0);
  # hide the X-Axis
  $chart->get_context('default')->domain_axis->hidden(1);

  my $chart = Chart::Clicker->new;
  # a sprintf format to have 3 decimal places showing on the Y-Axis
  $chart->get_context('default')->range_axis->format('%.3f');

This is a work in progress. If you find errors or would like to make contributions, drop me a line!

Cory G Watson <gphat@cpan.org>

This software is copyright (c) 2016 by Cory G Watson.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

2016-12-28 perl v5.24.1