logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Chart::Manual::Workflows - different ways to create charts

Author

       Herbert Breunung, <lichtkind@cpan.org>

perl v5.36.0                                       2022-12-10                      Chart::Manual::Workflows(3pm)

Name

       Chart::Manual::Workflows - different ways to create charts

Overview

       Four of the five major steps in creating a chart image are fixed in their order. First you have to load
       the module, secondly create create the object.  After that you
        may change some properties.  And always as a last step you create the image, no matter if the output
       goes to STDOUT or into a file.

       The only flexibility lies in how you prefer to provide the data.  And here you have three options. Most
       commonly you add one data set at the time, which could be also understood as a row of the complete data
       table.  Second option is to build the table column by column. Thirdly you can drop the complete table at
       once, either by reference to a data structure or a file containing the data.  The last option is  closed
       if you already given the object data.  It is not advisable to reuse a chart object for further image
       creation outside of modern art projects.

Steps

       Most steps are already explained elsewhere and the OVERVIEW just links there. The missing bits are layed
       out here.

   useChart
       As with any other Modul you have to:

         use Chart::[Type];

       Type being a placeholder for a name of a chart type, which are: Bars, Composite, Direction, ErrorBars,
       HorizontalBars, Lines, LinesPoints, Mountain, Pareto, Pie, Points, Split, StackedBars. To know more about
       them read Chart::Manual::Types.

       Alternatively write to load all chart types at ones with

         use Chart;

       Both are not importing any symbols in your name space but load Carp and GD.

   dropdata
       All the methods listed in the last section, that create the final image, take as an optional, second
       argument data.  This data may be delivered either as a reference to an array of arrays:

           my $data = [ [ 1, 4, 3 ... ], # data set 0
                        [ 5, 8, 2 ... ], # data set 1
                        ...
           ];
           $graph->png( 'file.png', $data );

       or in form of a file. Then the argument has to be a file name or a file handle (old school as in "FILE"
       or modern as in $FH).  Alternatively use the method add_datafile.

   datafiles
       Are arbitrary named text files containing one or several rows of numbers, which have to be separated by
       spaces or tabs (\t) (mixing allowed).  Perl style comments or empty lines will be ignored, but rows
       containing different amount of numbers will cause problems.

   createimage
       Currently we support only images in the PNG and JPEG format. The methods to create them are named
       straight forwardly: ->png and ->jpeg. Both take the same arguments and produce image files. For shell
       scripting or web programming you need the image binary, which you get with: ->cgi_png or ->cgi_jpeg. Some
       users might even want the GD object for further processing by your perl programm. In that case please
       use: ->scalar_png or ->scalar_jpeg.

       After having created a chart for web purposes, you also might want to utilize imagemap_dump.

See Also