/usr/share/doc/libspreadsheet-writeexcel-perl/examples/chart_pie.pl is in libspreadsheet-writeexcel-perl 2.37-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | #!/usr/bin/perl -w
###############################################################################
#
# A simple demo of Pie charts in Spreadsheet::WriteExcel.
#
# reverse('©'), December 2009, John McNamara, jmcnamara@cpan.org
#
use strict;
use Spreadsheet::WriteExcel;
my $workbook = Spreadsheet::WriteExcel->new( 'chart_pie.xls' );
my $worksheet = $workbook->add_worksheet();
my $bold = $workbook->add_format( bold => 1 );
# Add the worksheet data that the charts will refer to.
my $headings = [ 'Category', 'Values' ];
my $data = [
[ 'Apple', 'Cherry', 'Pecan' ],
[ 60, 30, 10 ],
];
$worksheet->write( 'A1', $headings, $bold );
$worksheet->write( 'A2', $data );
###############################################################################
#
# Example 1. A minimal chart.
#
my $chart1 = $workbook->add_chart( type => 'pie' );
# Add values only. Use the default categories.
$chart1->add_series( values => '=Sheet1!$B$2:$B$4' );
###############################################################################
#
# Example 2. A minimal chart with user specified categories and a series name.
#
my $chart2 = $workbook->add_chart( type => 'pie' );
# Configure the series.
$chart2->add_series(
categories => '=Sheet1!$A$2:$A$4',
values => '=Sheet1!$B$2:$B$4',
name => 'Pie sales data',
);
###############################################################################
#
# Example 3. Same as previous chart but with an added title.
#
my $chart3 = $workbook->add_chart( type => 'pie' );
# Configure the series.
$chart3->add_series(
categories => '=Sheet1!$A$2:$A$4',
values => '=Sheet1!$B$2:$B$4',
name => 'Pie sales data',
);
# Add a title.
$chart3->set_title( name => 'Popular Pie Types' );
###############################################################################
#
# Example 4. Same as previous chart with a user specified chart sheet name.
#
my $chart4 = $workbook->add_chart( name => 'Results Chart', type => 'pie' );
# Configure the series.
$chart4->add_series(
categories => '=Sheet1!$A$2:$A$4',
values => '=Sheet1!$B$2:$B$4',
name => 'Pie sales data',
);
# The other chart_*.pl examples add a second series in example 4 but additional
# series aren't plotted in a pie chart.
# Add a title.
$chart4->set_title( name => 'Popular Pie Types' );
###############################################################################
#
# Example 5. Same as Example 3 but as an embedded chart.
#
my $chart5 = $workbook->add_chart( type => 'pie', embedded => 1 );
# Configure the series.
$chart5->add_series(
categories => '=Sheet1!$A$2:$A$4',
values => '=Sheet1!$B$2:$B$4',
name => 'Pie sales data',
);
# Add a title.
$chart5->set_title( name => 'Popular Pie Types' );
# Insert the chart into the main worksheet.
$worksheet->insert_chart( 'D2', $chart5 );
__END__
|