NAME

sparkline.pl - Command line tool for creating sparklines

VERSION

This document describes sparkline.pl version 0.03

Synopsis

sparkline.pl {type} [options] --values=1,2,3,4,5
sparkline.pl {type} -o outfile.svg [options] --values=1,2,3,4,5
sparkline.pl --help

DESCRIPTION

Create sparklines from a command line, printing either to stdout or a file. The command line options set the parameters passed to SVG::Sparklines to create the sparkline.

TYPES

This program supports the following Sparkline types:

Area

An Area sparkline is a basic line graph shaded between the line and the x axis.

Bar

The Bar sparkline type is a simple bar graph or histogram.

Line

The Line sparkline type is a simple line graph.

RangeArea

An RangeArea sparkline type shows high/low continuous values by displaying shading the area between two lines of continuous data.

RangeBar

The RangeBar sparkline type shows high/low pairs of related values that define a range at each of the supplied data points.

Whisker

The Whisker sparkline type shows a sequence of events that can have one of two outcomes (e.g. win/loss).

See SVG::Sparkline::Manual for more details.

OPTIONS

--allns

Provide all of the xmlns attributes on the root svg element, the default is to only supply the default SVG namespace.

--sized

Add the height and width attributes on the root svg element. This is currently the default behavior.

--nosized

Do not add the height and width attributes to the root svg element.

--bgcolor={color}

Specify a background color for the sparkline. By default, the sparkline will have a transparent background.

--bg={color}

Synonym for --bgcolor.

--padx={length}

Provide {length} pixels of padding on the left and right of the sparkline.

--pady={length}

Provide {length} pixels of padding on the top and bottom of the sparkline.

--height={length}

Specify the height of the sparkline. The default height is 10 pixels.

--h={length}

Synonym for --height.

--width={length}

Specify the width of the sparkling in pixels. The default width depends on the sparkline type and the number of data values.

--w={length}

Synonym for --width.

--values={comma separated list of values}

This required parameter specifies the data to display on the sparkline. The supplied data can take one of three forms.

All but RangeArea and RangeBar

Almost all sparkline types support the default data format which is a series of numbers separated by commas. The Whisker type has limits on the values allowed. Other than that, all specified types work the same way.

--values=1,2,3,4,5,6,7,8,9
Whisker

The Whisker sparkline type supports another format which is more condensed. This is a series of '+', '-', and '0' characters that represent the high, low, and neutral ticks on the Whisker graph.

--values=+--+-0+---+++
RangeArea and RangeBar

These two sparkline types require a pair of data values for each point on the sparkline. To accomplish this, we comma-separated list of pairs of values. Each pair consists of two values separated by a colon, with the smaller value first.

--values=1:1,2:4,3:9,4:16,5:25
--v={comma separated list of values}

Synonym for --values.

--mark={mark}

This parameter can be supplied multiple times to define multiple marks. Each mark has an index value and a color separated by a colon (or equals). The index value can be either a numeric index or one of the named indexes described in SVG::Sparkline::Manual under mark.

--color={color}

Specify the color of the data line.

--xscale={length}

Specify the distance between individual data points in the absence of a a --width. If neither --width or --xscale are supplied, the default is 2.

--thick={length}

Thickness of the line for those sparklines that have lines. For a Bar or RangeBar sparkline, this specifies the thickness of the bar.

--gap={length}

Gap between the bars of the Bar sparkline or the whiskers of the Whisker sparkline.

--outfile={filename}

Specify the name of a file where the sparkline should be written. The file must not exist unless the --clobber parameter is supplied.

By default, the sparkline is written to stdout.

--o=s

Synonym for --outfile.

--clobber

If the file specified by --outfile does exist, this parameter gives permission for the program to overwrite the file.

--c

Synonym for --clobber.

--help

Display the full help documentation for sparkline.pl.

--man

Synonym for --help.

CONFIGURATION AND ENVIRONMENT

sparkline.pl requires no configuration files or environment variables.

DEPENDENCIES

SVG::Sparkline, Getopt::Long, and Pod::Usage.

INCOMPATIBILITIES

None reported.

BUGS AND LIMITATIONS

No bugs have been reported.

AUTHOR

G. Wade Johnson gwadej@cpan.org

ACKNOWLEDGEMENTS

Thanks to Gabor Szabo for pointing out some deficiencies in the parameter handling and usability of the sparkline.pl program.

LICENCE AND COPYRIGHT

Copyright (c) 2015, G. Wade Johnson gwadej@cpan.org. All rights reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl 5.8.0. See perlartistic.

DISCLAIMER OF WARRANTY

BECAUSE THIS SOFTWARE IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE SOFTWARE, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE SOFTWARE "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE IS WITH YOU. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR, OR CORRECTION.

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE SOFTWARE AS PERMITTED BY THE ABOVE LICENCE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE SOFTWARE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE SOFTWARE TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.