如何用PhpSpreadsheet设置组合图表的次坐标轴和X轴坐标间隔?

使用phpspreadsheet创建组合图表并设置次坐标轴和x轴坐标间隔

本文介绍如何使用PhpSpreadsheet库创建组合图表,并设置次坐标轴以及X轴坐标间隔。

如何用PhpSpreadsheet设置组合图表的次坐标轴和X轴坐标间隔?

步骤:

  1. 创建图表对象:
$chart = new PhpOfficePhpSpreadsheetChartChart();
登录后复制
  1. 添加数据系列:

创建数据系列,并指定哪些系列使用次坐标轴。 以下代码示例展示了如何添加一个使用百分比值(次坐标轴)和一个使用数值(主坐标轴)的数据系列。

立即学习PHP免费学习笔记(深入)”;

$dataSeriesValues = [
    new PhpOfficePhpSpreadsheetChartDataSeriesValues('Number', 'Worksheet!$A$1:$A$5'), // 主坐标轴数据
    new PhpOfficePhpSpreadsheetChartDataSeriesValues('Percentage', 'Worksheet!$B$1:$B$5') // 次坐标轴数据
];

$xAxisTickValues = [
    new PhpOfficePhpSpreadsheetChartDataSeriesValues('String', 'Worksheet!$C$1:$C$5') // X轴分类数据
];

$series = new PhpOfficePhpSpreadsheetChartSeries(
    $dataSeriesValues,
    $xAxisTickValues
);

$series->setPlotDirection(PhpOfficePhpSpreadsheetChartSeries::PLOT_DIRECTION_HORIZONTAL); // 指定次坐标轴
$chart->addSeries($series);


$series = new PhpOfficePhpSpreadsheetChartSeries(
    new PhpOfficePhpSpreadsheetChartDataSeriesValues('Number', 'Worksheet!$A$1:$A$5') // 主坐标轴数据
);

$series->setPlotDirection(PhpOfficePhpSpreadsheetChartSeries::PLOT_DIRECTION_VERTICAL); // 指定主坐标轴
$chart->addSeries($series);
登录后复制
  1. 设置次坐标轴:
$layoutSecondaryAxes = new PhpOfficePhpSpreadsheetChartLayoutLayout();
$layoutSecondaryAxes->setShowAxis(true);

$yAxisSecondary = new PhpOfficePhpSpreadsheetChartAxis();
$yAxisSecondary->setLayout($layoutSecondaryAxes);

$chart->addAxis($yAxisSecondary, PhpOfficePhpSpreadsheetChartAxis::VERTICAL, $layoutSecondaryAxes); // 添加次坐标轴
登录后复制
  1. 设置X轴坐标间隔:
$layoutXAxis = new PhpOfficePhpSpreadsheetChartLayoutLayout();
$layoutXAxis->setTickValFrequency(1); // 设置X轴坐标间隔为1

$xAxis = new PhpOfficePhpSpreadsheetChartAxis();
$xAxis->setLayout($layoutXAxis);

$chart->addAxis($xAxis, PhpOfficePhpSpreadsheetChartAxis::HORIZONTAL); // 添加X轴
登录后复制

记住替换 ‘Worksheet!’ 为你的工作表名称。 通过调整 setTickValFrequency() 的值,可以控制X轴坐标的间隔。 这个例子中设置为1,表示每个数据点都显示在X轴上。

最后,将图表添加到工作表中:

$worksheet->addChart($chart);
登录后复制

通过以上步骤,您可以成功地使用PhpSpreadsheet创建具有次坐标轴和自定义X轴坐标间隔的组合图表。 请确保您已正确安装并包含PhpSpreadsheet库。

以上就是如何用PhpSpreadsheet设置组合图表的次坐标轴和X轴坐标间隔?的详细内容,更多请关注php中文网其它相关文章!

https://www.php.cn/faq/1231021.html

发表回复

Your email address will not be published. Required fields are marked *