@@ -172,23 +172,23 @@ function fnSlide_BarStacked(PhpPresentation $objPHPPresentation) {
172
172
echo date ( 'H:i:s ' ) . ' Create a stacked bar chart (that should be inserted in a chart shape) ' . EOL ;
173
173
$ StackedBarChart = new Bar ();
174
174
$ series1 = new Series ( '2009 ' , $ series1Data );
175
- $ series1 ->setShowSeriesName ( false );
175
+ $ series1 ->setShowSeriesName (false );
176
176
$ series1 ->getFill ()->setFillType ( Fill::FILL_SOLID )->setStartColor ( new Color ( 'FF4F81BD ' ) );
177
177
$ series1 ->getFont ()->getColor ()->setRGB ( '00FF00 ' );
178
- $ series1 ->setShowValue ( true );
179
- $ series1 ->setShowPercentage ( false );
178
+ $ series1 ->setShowValue (true );
179
+ $ series1 ->setShowPercentage (false );
180
180
$ series2 = new Series ( '2010 ' , $ series2Data );
181
- $ series2 ->setShowSeriesName ( false );
181
+ $ series2 ->setShowSeriesName (false );
182
182
$ series2 ->getFont ()->getColor ()->setRGB ( 'FF0000 ' );
183
183
$ series2 ->getFill ()->setFillType ( Fill::FILL_SOLID )->setStartColor ( new Color ( 'FFC0504D ' ) );
184
- $ series2 ->setShowValue ( true );
185
- $ series2 ->setShowPercentage ( false );
184
+ $ series2 ->setShowValue (true );
185
+ $ series2 ->setShowPercentage (false );
186
186
$ series3 = new Series ( '2011 ' , $ series3Data );
187
- $ series3 ->setShowSeriesName ( false );
187
+ $ series3 ->setShowSeriesName (false );
188
188
$ series3 ->getFont ()->getColor ()->setRGB ( 'FF0000 ' );
189
189
$ series3 ->getFill ()->setFillType ( Fill::FILL_SOLID )->setStartColor ( new Color ( 'FF804DC0 ' ) );
190
- $ series3 ->setShowValue ( true );
191
- $ series3 ->setShowPercentage ( false );
190
+ $ series3 ->setShowValue (true );
191
+ $ series3 ->setShowPercentage (false );
192
192
$ StackedBarChart ->addSeries ( $ series1 );
193
193
$ StackedBarChart ->addSeries ( $ series2 );
194
194
$ StackedBarChart ->addSeries ( $ series3 );
@@ -197,7 +197,7 @@ function fnSlide_BarStacked(PhpPresentation $objPHPPresentation) {
197
197
echo date ( 'H:i:s ' ) . ' Create a shape (chart) ' . EOL ;
198
198
$ shape = $ currentSlide ->createChartShape ();
199
199
$ shape ->setName ( 'PHPPresentation Monthly Downloads ' )
200
- ->setResizeProportional ( false )
200
+ ->setResizeProportional (false )
201
201
->setHeight ( 550 )
202
202
->setWidth ( 700 )
203
203
->setOffsetX ( 120 )
@@ -206,13 +206,13 @@ function fnSlide_BarStacked(PhpPresentation $objPHPPresentation) {
206
206
$ shape ->setFill ( $ oFill );
207
207
$ shape ->getBorder ()->setLineStyle ( Border::LINE_SINGLE );
208
208
$ shape ->getTitle ()->setText ( 'PHPPresentation Monthly Downloads ' );
209
- $ shape ->getTitle ()->getFont ()->setItalic ( true );
209
+ $ shape ->getTitle ()->getFont ()->setItalic (true );
210
210
$ shape ->getTitle ()->getAlignment ()->setHorizontal ( Alignment::HORIZONTAL_RIGHT );
211
211
$ shape ->getPlotArea ()->getAxisX ()->setTitle ( 'Month ' );
212
212
$ shape ->getPlotArea ()->getAxisY ()->setTitle ( 'Downloads ' );
213
213
$ shape ->getPlotArea ()->setType ( $ StackedBarChart );
214
214
$ shape ->getLegend ()->getBorder ()->setLineStyle ( Border::LINE_SINGLE );
215
- $ shape ->getLegend ()->getFont ()->setItalic ( true );
215
+ $ shape ->getLegend ()->getFont ()->setItalic (true );
216
216
}
217
217
218
218
function fnSlide_BarPercentStacked (PhpPresentation $ objPHPPresentation ) {
@@ -245,26 +245,26 @@ function fnSlide_BarPercentStacked(PhpPresentation $objPHPPresentation) {
245
245
echo date ( 'H:i:s ' ) . ' Create a percent stacked horizontal bar chart (that should be inserted in a chart shape) ' . EOL ;
246
246
$ PercentStackedBarChartHoriz = new Bar ();
247
247
$ series1 = new Series ( '2009 ' , $ series1Data );
248
- $ series1 ->setShowSeriesName ( false );
248
+ $ series1 ->setShowSeriesName (false );
249
249
$ series1 ->getFill ()->setFillType ( Fill::FILL_SOLID )->setStartColor ( new Color ( 'FF4F81BD ' ) );
250
250
$ series1 ->getFont ()->getColor ()->setRGB ( '00FF00 ' );
251
- $ series1 ->setShowValue ( true );
252
- $ series1 ->setShowPercentage ( false );
251
+ $ series1 ->setShowValue (true );
252
+ $ series1 ->setShowPercentage (false );
253
253
// Set Data Label Format For Chart To Display Percent
254
254
$ series1 ->setDlblNumFormat ( '#% ' );
255
255
$ series2 = new Series ( '2010 ' , $ series2Data );
256
- $ series2 ->setShowSeriesName ( false );
256
+ $ series2 ->setShowSeriesName (false );
257
257
$ series2 ->getFont ()->getColor ()->setRGB ( 'FF0000 ' );
258
258
$ series2 ->getFill ()->setFillType ( Fill::FILL_SOLID )->setStartColor ( new Color ( 'FFC0504D ' ) );
259
- $ series2 ->setShowValue ( true );
260
- $ series2 ->setShowPercentage ( false );
259
+ $ series2 ->setShowValue (true );
260
+ $ series2 ->setShowPercentage (false );
261
261
$ series2 ->setDlblNumFormat ( '#% ' );
262
262
$ series3 = new Series ( '2011 ' , $ series3Data );
263
- $ series3 ->setShowSeriesName ( false );
263
+ $ series3 ->setShowSeriesName (false );
264
264
$ series3 ->getFont ()->getColor ()->setRGB ( 'FF0000 ' );
265
265
$ series3 ->getFill ()->setFillType ( Fill::FILL_SOLID )->setStartColor ( new Color ( 'FF804DC0 ' ) );
266
- $ series3 ->setShowValue ( true );
267
- $ series3 ->setShowPercentage ( false );
266
+ $ series3 ->setShowValue (true );
267
+ $ series3 ->setShowPercentage (false );
268
268
$ series3 ->setDlblNumFormat ( '#% ' );
269
269
$ PercentStackedBarChartHoriz ->addSeries ( $ series1 );
270
270
$ PercentStackedBarChartHoriz ->addSeries ( $ series2 );
@@ -275,7 +275,7 @@ function fnSlide_BarPercentStacked(PhpPresentation $objPHPPresentation) {
275
275
echo date ( 'H:i:s ' ) . ' Create a shape (chart) ' . EOL ;
276
276
$ shape = $ currentSlide ->createChartShape ();
277
277
$ shape ->setName ( 'PHPPresentation Monthly Downloads ' )
278
- ->setResizeProportional ( false )
278
+ ->setResizeProportional (false )
279
279
->setHeight ( 550 )
280
280
->setWidth ( 700 )
281
281
->setOffsetX ( 120 )
@@ -284,13 +284,13 @@ function fnSlide_BarPercentStacked(PhpPresentation $objPHPPresentation) {
284
284
$ shape ->setFill ( $ oFill );
285
285
$ shape ->getBorder ()->setLineStyle ( Border::LINE_SINGLE );
286
286
$ shape ->getTitle ()->setText ( 'PHPPresentation Monthly Downloads ' );
287
- $ shape ->getTitle ()->getFont ()->setItalic ( true );
287
+ $ shape ->getTitle ()->getFont ()->setItalic (true );
288
288
$ shape ->getTitle ()->getAlignment ()->setHorizontal ( Alignment::HORIZONTAL_RIGHT );
289
289
$ shape ->getPlotArea ()->getAxisX ()->setTitle ( 'Month ' );
290
290
$ shape ->getPlotArea ()->getAxisY ()->setTitle ( 'Downloads ' );
291
291
$ shape ->getPlotArea ()->setType ( $ PercentStackedBarChartHoriz );
292
292
$ shape ->getLegend ()->getBorder ()->setLineStyle ( Border::LINE_SINGLE );
293
- $ shape ->getLegend ()->getFont ()->setItalic ( true );
293
+ $ shape ->getLegend ()->getFont ()->setItalic (true );
294
294
}
295
295
296
296
function fnSlide_Bar3D (PhpPresentation $ objPHPPresentation ) {
@@ -384,6 +384,61 @@ function fnSlide_Bar3DHorizontal(PhpPresentation $objPHPPresentation) {
384
384
$ shape ->getLegend ()->getFont ()->setItalic (true );
385
385
}
386
386
387
+ function fnSlide_Doughnut (PhpPresentation $ objPHPPresentation )
388
+ {
389
+ global $ oFill ;
390
+ global $ oShadow ;
391
+
392
+ // Create templated slide
393
+ echo EOL . date ('H:i:s ' ) . ' Create templated slide ' . EOL ;
394
+ $ currentSlide = createTemplatedSlide ($ objPHPPresentation );
395
+
396
+ // Generate sample data for second chart
397
+ echo date ('H:i:s ' ) . ' Generate sample data for chart ' . EOL ;
398
+ $ seriesData = array ('Monday ' => 18 , 'Tuesday ' => 23 , 'Wednesday ' => 14 , 'Thursday ' => 12 , 'Friday ' => 20 , 'Saturday ' => 8 , 'Sunday ' => 10 );
399
+
400
+ // Create a doughnut chart (that should be inserted in a shape)
401
+ echo date ('H:i:s ' ) . ' Create a non-3D Doughnut chart (that should be inserted in a chart shape) ' . EOL ;
402
+ $ doughnutChart = new \PhpOffice \PhpPresentation \Shape \Chart \Type \Doughnut ();
403
+ $ doughnutChart ->setHoleSize (43 );
404
+ $ series = new Series ('Downloads ' , $ seriesData );
405
+ $ series ->getDataPointFill (0 )->setFillType (Fill::FILL_SOLID )->setStartColor (new Color ('FF7CB5EC ' ));
406
+ $ series ->getDataPointFill (1 )->setFillType (Fill::FILL_SOLID )->setStartColor (new Color ('FF434348 ' ));
407
+ $ series ->getDataPointFill (2 )->setFillType (Fill::FILL_SOLID )->setStartColor (new Color ('FF90ED7D ' ));
408
+ $ series ->getDataPointFill (3 )->setFillType (Fill::FILL_SOLID )->setStartColor (new Color ('FFF7A35C ' ));
409
+ $ series ->getDataPointFill (4 )->setFillType (Fill::FILL_SOLID )->setStartColor (new Color ('FF8085E9 ' ));
410
+ $ series ->getDataPointFill (5 )->setFillType (Fill::FILL_SOLID )->setStartColor (new Color ('FFF15C80 ' ));
411
+ $ series ->getDataPointFill (6 )->setFillType (Fill::FILL_SOLID )->setStartColor (new Color ('FFE4D354 ' ));
412
+ $ series ->setShowPercentage (true );
413
+ $ series ->setShowValue (false );
414
+ $ series ->setShowSeriesName (false );
415
+ $ series ->setShowCategoryName (true );
416
+ $ series ->setDlblNumFormat ('%d ' );
417
+ $ series ->setSeparator (' > ' );
418
+ $ series ->getFont ()->getColor ()->setRGB ('FFFF00 ' );
419
+ $ series ->getFont ()->setBold (true );
420
+ $ doughnutChart ->addSeries ($ series );
421
+
422
+ // Create a shape (chart)
423
+ echo date ('H:i:s ' ) . ' Create a shape (chart) ' . EOL ;
424
+ $ shape = $ currentSlide ->createChartShape ();
425
+ $ shape ->setName ('PHPPresentation Daily Downloads ' )
426
+ ->setResizeProportional (false )
427
+ ->setHeight (550 )
428
+ ->setWidth (700 )
429
+ ->setOffsetX (120 )
430
+ ->setOffsetY (80 );
431
+ $ shape ->setShadow ($ oShadow );
432
+ $ shape ->setFill ($ oFill );
433
+ $ shape ->getBorder ()->setLineStyle (Border::LINE_SINGLE );
434
+ $ shape ->getTitle ()->setText ('PHPPresentation Daily Downloads ' );
435
+ $ shape ->getTitle ()->getFont ()->setItalic (true );
436
+ $ shape ->getPlotArea ()->setType ($ doughnutChart );
437
+ $ shape ->getLegend ()->getBorder ()->setLineStyle (Border::LINE_SINGLE );
438
+ $ shape ->getLegend ()->getFont ()->setItalic (true );
439
+ $ shape ->getLegend ()->setPosition (\PhpOffice \PhpPresentation \Shape \Chart \Legend::POSITION_LEFT );
440
+ }
441
+
387
442
function fnSlide_Pie3D (PhpPresentation $ objPHPPresentation ) {
388
443
global $ oFill ;
389
444
global $ oShadow ;
@@ -456,10 +511,10 @@ function fnSlide_Pie(PhpPresentation $objPHPPresentation) {
456
511
$ series ->getDataPointFill (4 )->setFillType (Fill::FILL_SOLID )->setStartColor (new Color ('FF8085E9 ' ));
457
512
$ series ->getDataPointFill (5 )->setFillType (Fill::FILL_SOLID )->setStartColor (new Color ('FFF15C80 ' ));
458
513
$ series ->getDataPointFill (6 )->setFillType (Fill::FILL_SOLID )->setStartColor (new Color ('FFE4D354 ' ));
459
- $ series ->setShowPercentage ( true );
460
- $ series ->setShowValue ( false );
461
- $ series ->setShowSeriesName ( false );
462
- $ series ->setShowCategoryName ( true );
514
+ $ series ->setShowPercentage (true );
515
+ $ series ->setShowValue (false );
516
+ $ series ->setShowSeriesName (false );
517
+ $ series ->setShowCategoryName (true );
463
518
$ series ->setDlblNumFormat ('%d ' );
464
519
$ pieChart ->addSeries ($ series );
465
520
@@ -563,6 +618,8 @@ function fnSlide_Scatter(PhpPresentation $objPHPPresentation) {
563
618
564
619
fnSlide_Bar3DHorizontal ($ objPHPPresentation );
565
620
621
+ fnSlide_Doughnut ($ objPHPPresentation );
622
+
566
623
fnSlide_Pie3D ($ objPHPPresentation );
567
624
568
625
fnSlide_Pie ($ objPHPPresentation );
0 commit comments