使用perl的excel图表

时间:2012-11-14 04:50:52

标签: perl

当我运行脚本时,我遇到了问题,因为无法通过map_column.pl第33行的“Spreadsheet :: WriteExcel”找到对象方法“add_chart”。我可以知道这里有什么问题吗?我正在使用为x86_64-linux构建的perl,v5.8.5。     #!/ usr / bin / perl -w

###############################################################################
#
# A simple demo of Column charts in Spreadsheet::WriteExcel.
#
# reverse('©'), December 2009, John McNamara, jmcnamara@cpan.org
#

use strict;
use Spreadsheet::WriteExcel;

my $workbook  = Spreadsheet::WriteExcel->new( 'chart_column.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 1', 'Values 2' ];
my $data = [
    [ 2, 3, 4, 5, 6, 7 ],
    [ 1, 4, 5, 2, 1, 5 ],
    [ 3, 6, 7, 5, 4, 3 ],
];

$worksheet->write( 'A1', $headings, $bold );
$worksheet->write( 'A2', $data );


###############################################################################
#
# Example 1. A minimal chart.
#
my $chart1 = $workbook->add_chart( type => 'column' );

# Add values only. Use the default categories.
$chart1->add_series( values => '=Sheet1!$B$2:$B$7' );

# Insert the chart into the main worksheet.
$worksheet->insert_chart( 'E2', $chart1 );

1 个答案:

答案 0 :(得分:3)

只需添加embedded => 1到add_chart调用:

的Perl

my $chart1 = $workbook->add_chart( type => 'column', embedded => 1 );