mirror of
https://github.com/retailcrm/PHPExcel.git
synced 2024-11-22 21:36:05 +03:00
Radars and some fixes to bubbles
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@86922 2327b42d-5241-43d6-9e2a-de5ac946f064
This commit is contained in:
parent
49e485e010
commit
8bbb468122
@ -215,6 +215,17 @@ class PHPExcel_Writer_Excel2007_Chart extends PHPExcel_Writer_Excel2007_WriterPa
|
|||||||
$plotGroup = $plotArea->getPlotGroupByIndex($i);
|
$plotGroup = $plotArea->getPlotGroupByIndex($i);
|
||||||
$groupType = $plotGroup->getPlotType();
|
$groupType = $plotGroup->getPlotType();
|
||||||
if ($groupType == $chartType) {
|
if ($groupType == $chartType) {
|
||||||
|
|
||||||
|
if ($groupType === PHPExcel_Chart_DataSeries::TYPE_RADARCHART) {
|
||||||
|
$objWriter->startElement('c:radarStyle');
|
||||||
|
$objWriter->writeAttribute('val', 'marker' );
|
||||||
|
$objWriter->endElement();
|
||||||
|
} elseif ($groupType === PHPExcel_Chart_DataSeries::TYPE_SCATTERCHART) {
|
||||||
|
$objWriter->startElement('c:scatterStyle');
|
||||||
|
$objWriter->writeAttribute('val', 'lineMarker' );
|
||||||
|
$objWriter->endElement();
|
||||||
|
}
|
||||||
|
|
||||||
$this->_writePlotGroup($plotGroup, $groupType, $objWriter, $catIsMultiLevelSeries, $valIsMultiLevelSeries, $plotGroupingType);
|
$this->_writePlotGroup($plotGroup, $groupType, $objWriter, $catIsMultiLevelSeries, $valIsMultiLevelSeries, $plotGroupingType);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -504,8 +515,10 @@ class PHPExcel_Writer_Excel2007_Chart extends PHPExcel_Writer_Excel2007_WriterPa
|
|||||||
$objWriter->writeAttribute('val', 0);
|
$objWriter->writeAttribute('val', 0);
|
||||||
$objWriter->endElement();
|
$objWriter->endElement();
|
||||||
|
|
||||||
$layout = $yAxisLabel->getLayout();
|
if ($groupType !== PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) {
|
||||||
$this->_writeLayout($layout, $objWriter);
|
$layout = $yAxisLabel->getLayout();
|
||||||
|
$this->_writeLayout($layout, $objWriter);
|
||||||
|
}
|
||||||
|
|
||||||
$objWriter->endElement();
|
$objWriter->endElement();
|
||||||
}
|
}
|
||||||
@ -662,7 +675,8 @@ class PHPExcel_Writer_Excel2007_Chart extends PHPExcel_Writer_Excel2007_WriterPa
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (($groupType === PHPExcel_Chart_DataSeries::TYPE_BARCHART) ||
|
if (($groupType === PHPExcel_Chart_DataSeries::TYPE_BARCHART) ||
|
||||||
($groupType === PHPExcel_Chart_DataSeries::TYPE_BARCHART_3D)) {
|
($groupType === PHPExcel_Chart_DataSeries::TYPE_BARCHART_3D) ||
|
||||||
|
($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART)) {
|
||||||
|
|
||||||
$objWriter->startElement('c:invertIfNegative');
|
$objWriter->startElement('c:invertIfNegative');
|
||||||
$objWriter->writeAttribute('val', 0);
|
$objWriter->writeAttribute('val', 0);
|
||||||
@ -688,7 +702,7 @@ class PHPExcel_Writer_Excel2007_Chart extends PHPExcel_Writer_Excel2007_WriterPa
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($groupType == PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) {
|
if ($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) {
|
||||||
$objWriter->startElement('c:xVal');
|
$objWriter->startElement('c:xVal');
|
||||||
} else {
|
} else {
|
||||||
$objWriter->startElement('c:cat');
|
$objWriter->startElement('c:cat');
|
||||||
@ -703,7 +717,7 @@ class PHPExcel_Writer_Excel2007_Chart extends PHPExcel_Writer_Excel2007_WriterPa
|
|||||||
if ($plotSeriesValues) {
|
if ($plotSeriesValues) {
|
||||||
$valIsMultiLevelSeries = $valIsMultiLevelSeries || $plotSeriesValues->isMultiLevelSeries();
|
$valIsMultiLevelSeries = $valIsMultiLevelSeries || $plotSeriesValues->isMultiLevelSeries();
|
||||||
|
|
||||||
if ($groupType == PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) {
|
if ($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) {
|
||||||
$objWriter->startElement('c:yVal');
|
$objWriter->startElement('c:yVal');
|
||||||
} else {
|
} else {
|
||||||
$objWriter->startElement('c:val');
|
$objWriter->startElement('c:val');
|
||||||
@ -713,6 +727,10 @@ class PHPExcel_Writer_Excel2007_Chart extends PHPExcel_Writer_Excel2007_WriterPa
|
|||||||
$objWriter->endElement();
|
$objWriter->endElement();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) {
|
||||||
|
$this->_writeBubbles($plotSeriesValues, $objWriter);
|
||||||
|
}
|
||||||
|
|
||||||
$objWriter->endElement();
|
$objWriter->endElement();
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -826,6 +844,40 @@ class PHPExcel_Writer_Excel2007_Chart extends PHPExcel_Writer_Excel2007_WriterPa
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function _writeBubbles($plotSeriesValues, $objWriter)
|
||||||
|
{
|
||||||
|
if (is_null($plotSeriesValues)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$objWriter->startElement('c:bubbleSize');
|
||||||
|
$objWriter->startElement('c:numLit');
|
||||||
|
|
||||||
|
$objWriter->startElement('c:formatCode');
|
||||||
|
$objWriter->writeRawData( 'General' );
|
||||||
|
$objWriter->endElement();
|
||||||
|
|
||||||
|
$objWriter->startElement('c:ptCount');
|
||||||
|
$objWriter->writeAttribute('val', $plotSeriesValues->getPointCount() );
|
||||||
|
$objWriter->endElement();
|
||||||
|
|
||||||
|
foreach($plotSeriesValues->getDataValues() as $plotSeriesKey => $plotSeriesValue) {
|
||||||
|
$objWriter->startElement('c:pt');
|
||||||
|
$objWriter->writeAttribute('idx', $plotSeriesKey );
|
||||||
|
$objWriter->startElement('c:v');
|
||||||
|
$objWriter->writeRawData( 1 );
|
||||||
|
$objWriter->endElement();
|
||||||
|
$objWriter->endElement();
|
||||||
|
}
|
||||||
|
|
||||||
|
$objWriter->endElement();
|
||||||
|
$objWriter->endElement();
|
||||||
|
|
||||||
|
$objWriter->startElement('c:bubble3D');
|
||||||
|
$objWriter->writeAttribute('val', 0 );
|
||||||
|
$objWriter->endElement();
|
||||||
|
}
|
||||||
|
|
||||||
private function _writeLayout(PHPExcel_Chart_Layout $layout = NULL, $objWriter)
|
private function _writeLayout(PHPExcel_Chart_Layout $layout = NULL, $objWriter)
|
||||||
{
|
{
|
||||||
$objWriter->startElement('c:layout');
|
$objWriter->startElement('c:layout');
|
||||||
|
Loading…
Reference in New Issue
Block a user