http://www.perlmonks.org?node_id=960829


in reply to How to set x-axis label at the bottom(outside of chart) in a line chart

You can do this in Excel::Writer::XLSX using the label_position chart axis option set to low. Here is a small working example:

use strict; use warnings; use Excel::Writer::XLSX; # Create a workbook, a worksheet and a chart. my $workbook = Excel::Writer::XLSX->new( 'chart_axis.xlsx' ); my $worksheet = $workbook->add_worksheet(); my $chart = $workbook->add_chart( type => 'column', embedded = +> 1 ); # Some data to add to plot. my $data = [ [ 1, 2, -3, 4, 5 ], [ -2, 4, 6, 8, 10 ], [ 3, -6, 9, 12, 15 ], ]; # Write the data to the worksheet. $worksheet->write( 'A1', $data ); # Add three data series to the chart. $chart->add_series( values => '=Sheet1!$A$1:$A$5' ); $chart->add_series( values => '=Sheet1!$B$1:$B$5' ); $chart->add_series( values => '=Sheet1!$C$1:$C$5' ); $chart->set_x_axis( label_position => 'low' ); # Insert the embedded chart. $worksheet->insert_chart( 'E9', $chart ); __END__

See the Excel::Writer::XLSX::Chart docs for details.

--
John.