Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<code><font color="#000000">
2
<font color="#0000BB">&lt;?php<br /></font><font color="#FF8000">//<br />//&nbsp;Example&nbsp;of&nbsp;CSIM&nbsp;frequence&nbsp;bar&nbsp;that&nbsp;uses&nbsp;the&nbsp;cache<br />//<br /></font><font color="#007700">include_once&nbsp;(</font><font color="#DD0000">"../jpgraph.php"</font><font color="#007700">);<br />include_once&nbsp;(</font><font color="#DD0000">"../jpgraph_bar.php"</font><font color="#007700">);<br />include_once&nbsp;(</font><font color="#DD0000">"../jpgraph_line.php"</font><font color="#007700">);<br /><br /><br /></font><font color="#FF8000">//&nbsp;Utility&nbsp;function&nbsp;to&nbsp;calculate&nbsp;the&nbsp;accumulated&nbsp;frequence<br />//&nbsp;for&nbsp;a&nbsp;set&nbsp;of&nbsp;values&nbsp;and&nbsp;ocurrences<br /></font><font color="#007700">function&nbsp;</font><font color="#0000BB">accfreq</font><font color="#007700">(</font><font color="#0000BB">$data</font><font color="#007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000BB">rsort</font><font color="#007700">(</font><font color="#0000BB">$data</font><font color="#007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000BB">$s&nbsp;</font><font color="#007700">=&nbsp;</font><font color="#0000BB">array_sum</font><font color="#007700">(</font><font color="#0000BB">$data</font><font color="#007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000BB">$as&nbsp;</font><font color="#007700">=&nbsp;array(</font><font color="#0000BB">$data</font><font color="#007700">[</font><font color="#0000BB">0</font><font color="#007700">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000BB">$asp&nbsp;</font><font color="#007700">=&nbsp;array(</font><font color="#0000BB">100</font><font color="#007700">*</font><font color="#0000BB">$as</font><font color="#007700">[</font><font color="#0000BB">0</font><font color="#007700">]/</font><font color="#0000BB">$s</font><font color="#007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000BB">$n&nbsp;</font><font color="#007700">=&nbsp;</font><font color="#0000BB">count</font><font color="#007700">(</font><font color="#0000BB">$data</font><font color="#007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;for(&nbsp;</font><font color="#0000BB">$i</font><font color="#007700">=</font><font color="#0000BB">1</font><font color="#007700">;&nbsp;</font><font color="#0000BB">$i&nbsp;</font><font color="#007700">&lt;&nbsp;</font><font color="#0000BB">$n</font><font color="#007700">;&nbsp;++</font><font color="#0000BB">$i&nbsp;</font><font color="#007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000BB">$as</font><font color="#007700">[</font><font color="#0000BB">$i</font><font color="#007700">]&nbsp;=&nbsp;</font><font color="#0000BB">$as</font><font color="#007700">[</font><font color="#0000BB">$i</font><font color="#007700">-</font><font color="#0000BB">1</font><font color="#007700">]+</font><font color="#0000BB">$data</font><font color="#007700">[</font><font color="#0000BB">$i</font><font color="#007700">];<br />&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000BB">$asp</font><font color="#007700">[</font><font color="#0000BB">$i</font><font color="#007700">]&nbsp;=&nbsp;</font><font color="#0000BB">100.0</font><font color="#007700">*</font><font color="#0000BB">$as</font><font color="#007700">[</font><font color="#0000BB">$i</font><font color="#007700">]/</font><font color="#0000BB">$s</font><font color="#007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;</font><font color="#0000BB">$asp</font><font color="#007700">;<br />}<br /><br /></font><font color="#FF8000">//&nbsp;some&nbsp;data<br /></font><font color="#0000BB">$data_freq&nbsp;</font><font color="#007700">=&nbsp;array(</font><font color="#0000BB">22</font><font color="#007700">,</font><font color="#0000BB">20</font><font color="#007700">,</font><font color="#0000BB">12</font><font color="#007700">,</font><font color="#0000BB">10</font><font color="#007700">,</font><font color="#0000BB">5</font><font color="#007700">,</font><font color="#0000BB">4</font><font color="#007700">,</font><font color="#0000BB">2</font><font color="#007700">);<br /></font><font color="#0000BB">$data_accfreq&nbsp;</font><font color="#007700">=&nbsp;</font><font color="#0000BB">accfreq</font><font color="#007700">(</font><font color="#0000BB">$data_freq</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;Create&nbsp;the&nbsp;graph.&nbsp;<br /></font><font color="#0000BB">$graph&nbsp;</font><font color="#007700">=&nbsp;new&nbsp;</font><font color="#0000BB">Graph</font><font color="#007700">(</font><font color="#0000BB">350</font><font color="#007700">,</font><font color="#0000BB">250</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;We&nbsp;need&nbsp;to&nbsp;make&nbsp;this&nbsp;extra&nbsp;call&nbsp;for&nbsp;CSIM&nbsp;scripts<br />//&nbsp;that&nbsp;make&nbsp;use&nbsp;of&nbsp;the&nbsp;cache.&nbsp;If&nbsp;the&nbsp;cache&nbsp;contains&nbsp;this<br />//&nbsp;graph&nbsp;the&nbsp;HTML&nbsp;wrapper&nbsp;will&nbsp;be&nbsp;returned&nbsp;and&nbsp;then&nbsp;the<br />//&nbsp;method&nbsp;will&nbsp;call&nbsp;exit()&nbsp;and&nbsp;hence&nbsp;NO&nbsp;LINES&nbsp;AFTER&nbsp;THIS&nbsp;<br />//&nbsp;CALL&nbsp;WILL&nbsp;BE&nbsp;EXECUTED.<br />//&nbsp;$graph-&gt;CheckCSIMCache('auto');<br /><br />//&nbsp;Setup&nbsp;some&nbsp;basic&nbsp;graph&nbsp;parameters<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">SetScale</font><font color="#007700">(</font><font color="#DD0000">"textlin"</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">SetY2Scale</font><font color="#007700">(</font><font color="#DD0000">'lin'</font><font color="#007700">,</font><font color="#0000BB">0</font><font color="#007700">,</font><font color="#0000BB">100</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">img</font><font color="#007700">-&gt;</font><font color="#0000BB">SetMargin</font><font color="#007700">(</font><font color="#0000BB">50</font><font color="#007700">,</font><font color="#0000BB">70</font><font color="#007700">,</font><font color="#0000BB">30</font><font color="#007700">,</font><font color="#0000BB">40</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">yaxis</font><font color="#007700">-&gt;</font><font color="#0000BB">SetTitleMargin</font><font color="#007700">(</font><font color="#0000BB">30</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">SetMarginColor</font><font color="#007700">(</font><font color="#DD0000">'#EEEEEE'</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;Setup&nbsp;titles&nbsp;and&nbsp;fonts<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">title</font><font color="#007700">-&gt;</font><font color="#0000BB">Set</font><font color="#007700">(</font><font color="#DD0000">"Frequence&nbsp;plot"</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">xaxis</font><font color="#007700">-&gt;</font><font color="#0000BB">title</font><font color="#007700">-&gt;</font><font color="#0000BB">Set</font><font color="#007700">(</font><font color="#DD0000">"X-title"</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">yaxis</font><font color="#007700">-&gt;</font><font color="#0000BB">title</font><font color="#007700">-&gt;</font><font color="#0000BB">Set</font><font color="#007700">(</font><font color="#DD0000">"Y-title"</font><font color="#007700">);<br /><br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">title</font><font color="#007700">-&gt;</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 /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">yaxis</font><font color="#007700">-&gt;</font><font color="#0000BB">title</font><font color="#007700">-&gt;</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 /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">xaxis</font><font color="#007700">-&gt;</font><font color="#0000BB">title</font><font color="#007700">-&gt;</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">//&nbsp;Turn&nbsp;the&nbsp;tickmarks<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">xaxis</font><font color="#007700">-&gt;</font><font color="#0000BB">SetTickSide</font><font color="#007700">(</font><font color="#0000BB">SIDE_DOWN</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">yaxis</font><font color="#007700">-&gt;</font><font color="#0000BB">SetTickSide</font><font color="#007700">(</font><font color="#0000BB">SIDE_LEFT</font><font color="#007700">);<br /><br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">y2axis</font><font color="#007700">-&gt;</font><font color="#0000BB">SetTickSide</font><font color="#007700">(</font><font color="#0000BB">SIDE_RIGHT</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">y2axis</font><font color="#007700">-&gt;</font><font color="#0000BB">SetColor</font><font color="#007700">(</font><font color="#DD0000">'black'</font><font color="#007700">,</font><font color="#DD0000">'blue'</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">y2axis</font><font color="#007700">-&gt;</font><font color="#0000BB">SetLabelFormat</font><font color="#007700">(</font><font color="#DD0000">'%3d.0%%'</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;Create&nbsp;a&nbsp;bar&nbsp;pot<br /></font><font color="#0000BB">$bplot&nbsp;</font><font color="#007700">=&nbsp;new&nbsp;</font><font color="#0000BB">BarPlot</font><font color="#007700">(</font><font color="#0000BB">$data_freq</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;Create&nbsp;targets&nbsp;and&nbsp;alt&nbsp;texts&nbsp;for&nbsp;the&nbsp;image&nbsp;maps.&nbsp;One&nbsp;for&nbsp;each&nbsp;bar<br />//&nbsp;(In&nbsp;this&nbsp;example&nbsp;this&nbsp;is&nbsp;just&nbsp;"dummy"&nbsp;targets)<br /></font><font color="#0000BB">$targ</font><font color="#007700">=array(</font><font color="#DD0000">"#1"</font><font color="#007700">,</font><font color="#DD0000">"#2"</font><font color="#007700">,</font><font color="#DD0000">"#3"</font><font color="#007700">,</font><font color="#DD0000">"#4"</font><font color="#007700">,</font><font color="#DD0000">"#5"</font><font color="#007700">,</font><font color="#DD0000">"#6"</font><font color="#007700">,</font><font color="#DD0000">"#7"</font><font color="#007700">);<br /></font><font color="#0000BB">$alts</font><font color="#007700">=array(</font><font color="#DD0000">"val=%d"</font><font color="#007700">,</font><font color="#DD0000">"val=%d"</font><font color="#007700">,</font><font color="#DD0000">"val=%d"</font><font color="#007700">,</font><font color="#DD0000">"val=%d"</font><font color="#007700">,</font><font color="#DD0000">"val=%d"</font><font color="#007700">,</font><font color="#DD0000">"val=%d"</font><font color="#007700">,</font><font color="#DD0000">"val=%d"</font><font color="#007700">);<br /></font><font color="#0000BB">$bplot</font><font color="#007700">-&gt;</font><font color="#0000BB">SetCSIMTargets</font><font color="#007700">(</font><font color="#0000BB">$targ</font><font color="#007700">,</font><font color="#0000BB">$alts</font><font color="#007700">);<br /><br /><br /></font><font color="#FF8000">//&nbsp;Create&nbsp;accumulative&nbsp;graph<br /></font><font color="#0000BB">$lplot&nbsp;</font><font color="#007700">=&nbsp;new&nbsp;</font><font color="#0000BB">LinePlot</font><font color="#007700">(</font><font color="#0000BB">$data_accfreq</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;We&nbsp;want&nbsp;the&nbsp;line&nbsp;plot&nbsp;data&nbsp;point&nbsp;in&nbsp;the&nbsp;middle&nbsp;of&nbsp;the&nbsp;bars<br /></font><font color="#0000BB">$lplot</font><font color="#007700">-&gt;</font><font color="#0000BB">SetBarCenter</font><font color="#007700">();<br /><br /></font><font color="#FF8000">//&nbsp;Use&nbsp;transperancy<br /></font><font color="#0000BB">$lplot</font><font color="#007700">-&gt;</font><font color="#0000BB">SetFillColor</font><font color="#007700">(</font><font color="#DD0000">'lightblue@0.6'</font><font color="#007700">);<br /></font><font color="#0000BB">$lplot</font><font color="#007700">-&gt;</font><font color="#0000BB">SetColor</font><font color="#007700">(</font><font color="#DD0000">'blue@0.6'</font><font color="#007700">);<br /></font><font color="#FF8000">//$lplot-&gt;SetColor('blue');<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">AddY2</font><font color="#007700">(</font><font color="#0000BB">$lplot</font><font color="#007700">);<br /><br /><br /></font><font color="#FF8000">//&nbsp;Setup&nbsp;the&nbsp;bars<br /></font><font color="#0000BB">$bplot</font><font color="#007700">-&gt;</font><font color="#0000BB">SetFillColor</font><font color="#007700">(</font><font color="#DD0000">"orange@0.2"</font><font color="#007700">);<br /></font><font color="#0000BB">$bplot</font><font color="#007700">-&gt;</font><font color="#0000BB">SetValuePos</font><font color="#007700">(</font><font color="#DD0000">'center'</font><font color="#007700">);<br /></font><font color="#0000BB">$bplot</font><font color="#007700">-&gt;</font><font color="#0000BB">value</font><font color="#007700">-&gt;</font><font color="#0000BB">SetFormat</font><font color="#007700">(</font><font color="#DD0000">"%d"</font><font color="#007700">);<br /></font><font color="#0000BB">$bplot</font><font color="#007700">-&gt;</font><font color="#0000BB">value</font><font color="#007700">-&gt;</font><font color="#0000BB">SetFont</font><font color="#007700">(</font><font color="#0000BB">FF_ARIAL</font><font color="#007700">,</font><font color="#0000BB">FS_NORMAL</font><font color="#007700">,</font><font color="#0000BB">9</font><font color="#007700">);<br /></font><font color="#0000BB">$bplot</font><font color="#007700">-&gt;</font><font color="#0000BB">value</font><font color="#007700">-&gt;</font><font color="#0000BB">Show</font><font color="#007700">();<br /><br /></font><font color="#FF8000">//&nbsp;Add&nbsp;it&nbsp;to&nbsp;the&nbsp;graph<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">Add</font><font color="#007700">(</font><font color="#0000BB">$bplot</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;Send&nbsp;back&nbsp;the&nbsp;HTML&nbsp;page&nbsp;which&nbsp;will&nbsp;call&nbsp;this&nbsp;script&nbsp;again<br />//&nbsp;to&nbsp;retrieve&nbsp;the&nbsp;image.<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">StrokeCSIM</font><font color="#007700">(</font><font color="#DD0000">'barlinefreq_csimex1.php'</font><font color="#007700">);<br /><br /></font><font color="#0000BB">?&gt;<br /></font>
3
</font>
4
</code>