我想用PHPExcel生成一个LineChart,其中空单元格不显示为0值,但显示为间隙。 在我的代码中,我在PHPExcelChart的构造函数中尝试了很多不同的参数值#34; displayBlanksAs",比如' '或DISPLAY_BLANKS_AS_GAP或' X'或NULL等。但没有任何效果。空单元格始终显示为0而不是间隙。
有没有人有想法?非常感谢提前! 这是我的PHP代码:
<?php
...
$dataSeriesValues = array(
new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$58:$Q$58', NULL, 14),);
$series = new PHPExcel_Chart_DataSeries(
PHPExcel_Chart_DataSeries::TYPE_LINECHART, // plotType
PHPExcel_Chart_DataSeries::GROUPING_STACKED, // plotGrouping
range(0, count($dataSeriesValues)-1), // plotOrder
NULL, // plotLabel
NULL, // plotCategory
$dataSeriesValues // plotValues);
// Set the series in the plot area
$plotArea = new PHPExcel_Chart_PlotArea(NULL, array($series));
// Create the Chart
$chart = new PHPExcel_Chart(
'chart1', // name
NULL, // title
NULL, // legend
$plotArea, // plotArea
true, // plotVisibleOnly
DISPLAY_BLANKS_AS_GAP, // displayBlanksAs => here I tried ' ',NULL,'X', etc., empty cells are always displayed as 0, not as a gap
NULL, // xAxisLabel
NULL // yAxisLabel
);
// Set the position where the chart should appear in the worksheet
$chart->setTopLeftPosition('R58');
$chart->setBottomRightPosition('X58');
$objPHPExcel->getActiveSheet()->addChart($chart);
?>
答案 0 :(得分:0)
我自己找到了答案:
我必须在PHPExcel_Chart_DataSeries的构造函数中将 plotGrouping - 参数从GROUPING_STACKED更改为 GROUPING_STANDARD :
$series = new PHPExcel_Chart_DataSeries(
PHPExcel_Chart_DataSeries::TYPE_LINECHART, // plotType
PHPExcel_Chart_DataSeries::GROUPING_STANDARD, // plotGrouping
range(0, count($dataSeriesValues)-1), // plotOrder
NULL, // plotLabel
NULL, // plotCategory
$dataSeriesValues // plotValues);
然后空单元格显示为间隙。