Chart::OFC2::Candle - OFC2 candle chart
use Chart::OFC2; use Chart::OFC2::Axis; use Chart::OFC2::Candle; my $chart = Chart::OFC2->new( 'title' => 'Candle chart test', 'x_axis' => Chart::OFC2::XAxis->new( 'labels' => [ 'Jan', 'Feb', 'Mar', 'Apr', 'May' ], ), 'y_axis' => { 'max' => 'a', 'min' => 'a', }, ); my $candle = Chart::OFC2::Candle->new();
To define high, top, bottom and low yourself (allows those inside-out candles where bottom is higher than top)
$candle->values([ { high => 8, top => 4.4, bottom => 2, low => 1 }, { high => 7, top => 5, bottom => 4, low => 2 }, ] ); $chart->add_element($candle);
or to have auto-sorted (most typical usage) candles: high > top > bottom > low
$candle->values([ [ 9, 8, 7, 2 ], [ 7, 5, 4, 2 ], ] ); $chart->add_element($candle); print $chart->render_chart_data();
extends 'Chart::OFC2::BarLineBase';
has '+type_name' => (default => 'candle'); has '+tip' => (isa => 'Str', ); has 'values' => (is => 'rw', isa => 'ArrayRef', trigger => sub { $_[0]->extremes->reset('y' => $_[1]); $_[0]->process_values( $_[1] ) } );
Candle can have data in two formats:
[ [ 10, 8, 5, 1 ], [ 8, 3, 2, 1 ] ] or [ { 'high' => 10, 'top' => 8, 'bottom' => 5, 'low' => 1 }, { 'high' => 8, 'top' => 3, 'bottom' => 2, 'low' => 1 } ] If value sets are passed in the later format, nothing needs to be done. If value sets are passed in the first format, they should be transformed to the later format so that the data output will be usable by the graph
Robin Clarke
To install Chart::OFC2, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Chart::OFC2
CPAN shell
perl -MCPAN -e shell install Chart::OFC2
For more information on module installation, please visit the detailed CPAN module installation guide.