[42] | 1 | <?php // content="text/plain; charset=utf-8"
|
---|
| 2 | // Example of pie with center circle
|
---|
| 3 | require_once ('jpgraph/jpgraph.php');
|
---|
| 4 | require_once ('jpgraph/jpgraph_pie.php');
|
---|
| 5 |
|
---|
| 6 | // Some data
|
---|
| 7 | $data = array(50,28,25,27,31,20);
|
---|
| 8 |
|
---|
| 9 | // A new pie graph
|
---|
| 10 | $piegraph = new PieGraph(400,320);
|
---|
| 11 |
|
---|
| 12 | $n = count($data) ; // Number of slices
|
---|
| 13 |
|
---|
| 14 | // No border around graph
|
---|
| 15 | $piegraph->SetFrame(false);
|
---|
| 16 |
|
---|
| 17 | // Setup title
|
---|
| 18 | $piegraph->title->Set("CSIM Center Pie plot");
|
---|
| 19 | $piegraph->title->SetFont(FF_ARIAL,FS_BOLD,18);
|
---|
| 20 | $piegraph->title->SetMargin(8); // Add a little bit more margin from the top
|
---|
| 21 |
|
---|
| 22 | // Create the pie plot
|
---|
| 23 | $p1 = new PiePlotC($data);
|
---|
| 24 |
|
---|
| 25 | // Set the radius of pie (as fraction of image size)
|
---|
| 26 | $p1->SetSize(0.32);
|
---|
| 27 |
|
---|
| 28 | // Label font and color setup
|
---|
| 29 | $p1->value->SetFont(FF_ARIAL,FS_BOLD,11);
|
---|
| 30 | $p1->value->SetColor('white');
|
---|
| 31 |
|
---|
| 32 | // Setup the title on the center circle
|
---|
| 33 | $p1->midtitle->Set("Distribution\n2008 H1");
|
---|
| 34 | $p1->midtitle->SetFont(FF_ARIAL,FS_NORMAL,12);
|
---|
| 35 |
|
---|
| 36 | // Set color for mid circle
|
---|
| 37 | $p1->SetMidColor('yellow');
|
---|
| 38 |
|
---|
| 39 | // Use percentage values in the legends values (This is also the default)
|
---|
| 40 | $p1->SetLabelType(PIE_VALUE_PER);
|
---|
| 41 |
|
---|
| 42 | // The label array values may have printf() formatting in them. The argument to the
|
---|
| 43 | // form,at string will be the value of the slice (either the percetage or absolute
|
---|
| 44 | // depending on what was specified in the SetLabelType() above.
|
---|
| 45 | $lbl = array("Jan\n%.1f%%","Feb\n%.1f%%","March\n%.1f%%",
|
---|
| 46 | "Apr\n%.1f%%","May\n%.1f%%","Jun\n%.1f%%");
|
---|
| 47 | $p1->SetLabels($lbl);
|
---|
| 48 |
|
---|
| 49 | // Add drop shadow to slices
|
---|
| 50 | $p1->SetShadow();
|
---|
| 51 |
|
---|
| 52 | // Explode all slices 15 pixels
|
---|
| 53 | $p1->ExplodeAll(15);
|
---|
| 54 |
|
---|
| 55 | // Setup the CSIM targets
|
---|
| 56 | global $_wrapperfilename;
|
---|
| 57 | $targ = array(); $alt = array(); $wtarg = array();
|
---|
| 58 | for( $i=0; $i <= $n; ++$i ) {
|
---|
| 59 | $urlarg = 'pie_clickedon='.($i+1);
|
---|
| 60 | $targ[] = $_wrapperfilename.'?'.$urlarg;
|
---|
| 61 | $alt[] = 'val=%d';
|
---|
| 62 | $wtarg[] = '';
|
---|
| 63 | }
|
---|
| 64 | $p1->SetCSIMTargets($targ,$alt,$wtarg);
|
---|
| 65 | $p1->SetMidCSIM($targ[0],$alt[0],$wtarg[0]);
|
---|
| 66 |
|
---|
| 67 | // Add plot to pie graph
|
---|
| 68 | $piegraph->Add($p1);
|
---|
| 69 |
|
---|
| 70 | // Send back the image when we are called from within the <img> tag
|
---|
| 71 | $piegraph->StrokeCSIMImage();
|
---|
| 72 |
|
---|
| 73 | ?>
|
---|
| 74 |
|
---|
| 75 |
|
---|