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 |
|
---|