简体   繁体   English

Spreadsheet::WriteExcel (perl) 中饼图的更多格式

[英]More formatting in pie charts in Spreadsheet::WriteExcel (perl)

Does anyone know if it's possible to add more formatting to a pie chart?有谁知道是否可以向饼图添加更多格式? Such as, the showing the percentages of each slice on the graph itself or having the labels of each slice shown next/on it?例如,在图表本身上显示每个切片的百分比,还是在旁边/上显示每个切片的标签? Instead of only having one simple legend?而不是只有一个简单的传说?

Thanks!谢谢!

It isn't possible with Spreadsheet::WriteExcel but it is possible with Excel::Writer::XLSX . Spreadsheet::WriteExcel不可能,但Excel::Writer::XLSX可能。

Here is an example:这是一个例子:

#!/usr/bin/perl

use strict;
use warnings;
use Excel::Writer::XLSX;

my $workbook  = Excel::Writer::XLSX->new( 'chart_pie.xlsx' );
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 );

# Create a new chart object. In this case an embedded chart.
my $chart = $workbook->add_chart( type => 'pie', embedded => 1 );

# Configure the series.
$chart->add_series(
    name        => 'Pie sales data',
    categories  => [ 'Sheet1', 1, 3, 0, 0 ],
    values      => [ 'Sheet1', 1, 3, 1, 1 ],
    data_labels => { value => 1 },
);

# Add a title.
$chart->set_title( name => 'Popular Pie Types' );

# Set an Excel chart style. Colors with white outline and shadow.
$chart->set_style( 10 );

# Insert the chart into the worksheet (with an offset).
$worksheet->insert_chart( 'C2', $chart, 25, 10 );

__END__

And this is the chart it that is displayed:这是它显示的图表:在此处输入图像描述

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM