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(); | ||||||
| 
 | 
 | ||||||
|  | 					if ($groupType !== PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) { | ||||||
| 						$layout = $yAxisLabel->getLayout(); | 						$layout = $yAxisLabel->getLayout(); | ||||||
| 						$this->_writeLayout($layout, $objWriter); | 						$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
	 Mark Baker
						Mark Baker