使用带有负数据的折线图时勾选标签位移

时间:2014-10-24 00:39:04

标签: php phpexcel

我试图生成折线图,但我的部分值是负值。图表正确呈现,但X轴上的刻度标签被移位。似乎默认情况下他们会在X = 0以下放置几个像素。

$objWorksheet->fromArray(
        array(
                array('',       2010,   2011,   2012),
                array('Q1',   12,   15,         21),
                array('Q2',   -20,   73,         86),
                array('Q3',   -50,   61,         69),
                array('Q4',   30,   32,         0),
        )
);

结果:

wrong tick labels position

在我编辑图表时使用OpenOffice,我可以右键单击X = 0行=>格式轴=>定位=>标签,默认情况下,生成的图表已选择“近轴”#。当我将其改为' Outside start'例如,结果是:

wanna be labels position

如何使用PHPExcel完成此操作?

1 个答案:

答案 0 :(得分:4)

我终于解决了我的问题。如果有人遇到相同的错误,应用以下修复程序直到可配置解决问题:

在我的修订版中的文件Classes/PHPExcel/Writer/Excel2007/Chart.php,功能_writeCatAx,行506中。在$objWriter->startElement('c:tickLblPos');之后我有$objWriter->writeAttribute('val', "nextTo");行。

此修复正在将nextTo更改为low

PHPExcel是一个很棒的软件,但是必须具备这种可配置的东西。