Blame | Letzte Änderung | Log anzeigen | RSS feed
<code><font color="#000000"><font color="#0000BB"><?php<br /></font><font color="#FF8000">// $Id: balloonex1.php,v 1.5 2002/12/15 16:08:51 aditus Exp $<br /></font><font color="#007700">include (</font><font color="#DD0000">"../jpgraph.php"</font><font color="#007700">);<br />include (</font><font color="#DD0000">"../jpgraph_scatter.php"</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Some data<br /></font><font color="#0000BB">$datax </font><font color="#007700">= array(</font><font color="#0000BB">1</font><font color="#007700">,</font><font color="#0000BB">2</font><font color="#007700">,</font><font color="#0000BB">3</font><font color="#007700">,</font><font color="#0000BB">4</font><font color="#007700">,</font><font color="#0000BB">5</font><font color="#007700">,</font><font color="#0000BB">6</font><font color="#007700">,</font><font color="#0000BB">7</font><font color="#007700">,</font><font color="#0000BB">8</font><font color="#007700">);<br /></font><font color="#0000BB">$datay </font><font color="#007700">= array(</font><font color="#0000BB">12</font><font color="#007700">,</font><font color="#0000BB">23</font><font color="#007700">,</font><font color="#0000BB">95</font><font color="#007700">,</font><font color="#0000BB">18</font><font color="#007700">,</font><font color="#0000BB">65</font><font color="#007700">,</font><font color="#0000BB">28</font><font color="#007700">,</font><font color="#0000BB">86</font><font color="#007700">,</font><font color="#0000BB">44</font><font color="#007700">);<br /></font><font color="#FF8000">// Callback for markers<br />// Must return array(width,color,fill_color)<br />// If any of the returned values are "" then the<br />// default value for that parameter will be used.<br /></font><font color="#007700">function </font><font color="#0000BB">FCallback</font><font color="#007700">(</font><font color="#0000BB">$aVal</font><font color="#007700">) {<br /> </font><font color="#FF8000">// This callback will adjust the fill color and size of<br /> // the datapoint according to the data value according to<br /> </font><font color="#007700">if( </font><font color="#0000BB">$aVal </font><font color="#007700">< </font><font color="#0000BB">30 </font><font color="#007700">) </font><font color="#0000BB">$c </font><font color="#007700">= </font><font color="#DD0000">"blue"</font><font color="#007700">;<br /> elseif( </font><font color="#0000BB">$aVal </font><font color="#007700">< </font><font color="#0000BB">70 </font><font color="#007700">) </font><font color="#0000BB">$c </font><font color="#007700">= </font><font color="#DD0000">"green"</font><font color="#007700">;<br /> else </font><font color="#0000BB">$c</font><font color="#007700">=</font><font color="#DD0000">"red"</font><font color="#007700">;<br /> return array(</font><font color="#0000BB">floor</font><font color="#007700">(</font><font color="#0000BB">$aVal</font><font color="#007700">/</font><font color="#0000BB">3</font><font color="#007700">),</font><font color="#DD0000">""</font><font color="#007700">,</font><font color="#0000BB">$c</font><font color="#007700">);<br />}<br /><br /></font><font color="#FF8000">// Setup a basic graph<br /></font><font color="#0000BB">$graph </font><font color="#007700">= new </font><font color="#0000BB">Graph</font><font color="#007700">(</font><font color="#0000BB">400</font><font color="#007700">,</font><font color="#0000BB">300</font><font color="#007700">,</font><font color="#DD0000">'auto'</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">SetScale</font><font color="#007700">(</font><font color="#DD0000">"linlin"</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">img</font><font color="#007700">-></font><font color="#0000BB">SetMargin</font><font color="#007700">(</font><font color="#0000BB">40</font><font color="#007700">,</font><font color="#0000BB">100</font><font color="#007700">,</font><font color="#0000BB">40</font><font color="#007700">,</font><font color="#0000BB">40</font><font color="#007700">); <br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">SetShadow</font><font color="#007700">();<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">title</font><font color="#007700">-></font><font color="#0000BB">Set</font><font color="#007700">(</font><font color="#DD0000">"Example of ballon scatter plot"</font><font color="#007700">);<br /></font><font color="#FF8000">// Use a lot of grace to get large scales<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">scale</font><font color="#007700">-></font><font color="#0000BB">SetGrace</font><font color="#007700">(</font><font color="#0000BB">50</font><font color="#007700">,</font><font color="#0000BB">10</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Make sure X-axis as at the bottom of the graph<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">xaxis</font><font color="#007700">-></font><font color="#0000BB">SetPos</font><font color="#007700">(</font><fontcolor="#DD0000">'min'</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Create the scatter plot<br /></font><font color="#0000BB">$sp1 </font><font color="#007700">= new </font><font color="#0000BB">ScatterPlot</font><font color="#007700">(</font><font color="#0000BB">$datay</font><font color="#007700">,</font><font color="#0000BB">$datax</font><font color="#007700">);<br /></font><font color="#0000BB">$sp1</font><font color="#007700">-></font><font color="#0000BB">mark</font><font color="#007700">-></font><font color="#0000BB">SetType</font><font color="#007700">(</font><font color="#0000BB">MARK_FILLEDCIRCLE</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Uncomment the following two lines to display the values<br /></font><font color="#0000BB">$sp1</font><font color="#007700">-></font><font color="#0000BB">value</font><font color="#007700">-></font><font color="#0000BB">Show</font><font color="#007700">();<br /></font><font color="#0000BB">$sp1</font><font color="#007700">-></font><font color="#0000BB">value</font><font color="#007700">-></font><font color="#0000BB">SetFont</font><font color="#007700">(</font><font color="#0000BB">FF_FONT1</font><font color="#007700">,</font><font color="#0000BB">FS_BOLD</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Specify the callback<br /></font><font color="#0000BB">$sp1</font><font color="#007700">-></font><font color="#0000BB">mark</font><font color="#007700">-></font><font color="#0000BB">SetCallback</font><font color="#007700">(</font><font color="#DD0000">"FCallback"</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Setup the legend for plot<br /></font><font color="#0000BB">$sp1</font><font color="#007700">-></font><font color="#0000BB">SetLegend</font><font color="#007700">(</font><font color="#DD0000">'Year 2002'</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Add the scatter plot to the graph<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">Add</font><font color="#007700">(</font><font color="#0000BB">$sp1</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// ... and send to browser<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">Stroke</font><font color="#007700">();<br /><br /></font><font color="#0000BB">?><br /></font><br /><br /></font></code>