Subversion-Projekte lars-tiefland.php_share

Revision

Blame | Letzte Änderung | Log anzeigen | RSS feed

<code><font color="#000000">
<font color="#0000BB">&lt;?php<br /></font><font color="#007700">include&nbsp;(</font><font color="#DD0000">"../jpgraph.php"</font><font color="#007700">);<br />include&nbsp;(</font><font color="#DD0000">"../jpgraph_line.php"</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;The&nbsp;callback&nbsp;that&nbsp;converts&nbsp;timestamp&nbsp;to&nbsp;minutes&nbsp;and&nbsp;seconds<br /></font><font color="#007700">function&nbsp;</font><font color="#0000BB">TimeCallback</font><font color="#007700">(</font><font color="#0000BB">$aVal</font><font color="#007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;</font><font color="#0000BB">Date</font><font color="#007700">(</font><font color="#DD0000">'H:i:s'</font><font color="#007700">,</font><font color="#0000BB">$aVal</font><font color="#007700">);<br />}<br /><br /></font><font color="#FF8000">//&nbsp;Fake&nbsp;some&nbsp;suitable&nbsp;random&nbsp;data<br /></font><font color="#0000BB">$now&nbsp;</font><font color="#007700">=&nbsp;</font><font color="#0000BB">time</font><font color="#007700">();<br /></font><font color="#0000BB">$datax&nbsp;</font><font color="#007700">=&nbsp;array(</font><font color="#0000BB">$now</font><font color="#007700">);<br />for(&nbsp;</font><font color="#0000BB">$i</font><font color="#007700">=</font><font color="#0000BB">0</font><font color="#007700">;&nbsp;</font><font color="#0000BB">$i&nbsp;</font><font color="#007700">&lt;&nbsp;</font><font color="#0000BB">360</font><font color="#007700">;&nbsp;</font><font color="#0000BB">$i&nbsp;</font><font color="#007700">+=&nbsp;</font><font color="#0000BB">10&nbsp;</font><font color="#007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000BB">$datax</font><font color="#007700">[]&nbsp;=&nbsp;</font><font color="#0000BB">$now&nbsp;</font><font color="#007700">+&nbsp;</font><font color="#0000BB">$i</font><font color="#007700">;<br />}<br /></font><font color="#0000BB">$n&nbsp;</font><font color="#007700">=&nbsp;</font><font color="#0000BB">count</font><font color="#007700">(</font><font color="#0000BB">$datax</font><font color="#007700">);<br /></font><font color="#0000BB">$datay</font><font color="#007700">=array();<br />for(&nbsp;</font><font color="#0000BB">$i</font><font color="#007700">=</font><font color="#0000BB">0</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">$datay</font><font color="#007700">[]&nbsp;=&nbsp;</font><font color="#0000BB">rand</font><font color="#007700">(</font><font color="#0000BB">30</font><font color="#007700">,</font><font color="#0000BB">150</font><font color="#007700">);<br />}<br /><br /></font><font color="#FF8000">//&nbsp;Setup&nbsp;the&nbsp;basic&nbsp;graph<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">324</font><font color="#007700">,</font><font color="#0000BB">250</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">SetMargin</font><font color="#007700">(</font><font color="#0000BB">40</font><font color="#007700">,</font><font color="#0000BB">40</font><font color="#007700">,</font><font color="#0000BB">30</font><font color="#007700">,</font><font color="#0000BB">70</font><font color="#007700">);&nbsp;&nbsp;&nbsp;&nbsp;<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">'Date:&nbsp;'</font><font color="#007700">.</font><font color="#0000BB">date</font><font color="#007700">(</font><font color="#DD0000">'Y-m-d'</font><font color="#007700">,</font><font color="#0000BB">$now</font><font color="#007700">));<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">SetAlphaBlending</font><font color="#007700">();<br /><br /></font><font color="#FF8000">//&nbsp;Setup&nbsp;a&nbsp;manual&nbsp;x-scale&nbsp;(We&nbsp;leave&nbsp;the&nbsp;sentinels&nbsp;for&nbsp;the<br />//&nbsp;Y-axis&nbsp;at&nbsp;0&nbsp;which&nbsp;will&nbsp;then&nbsp;autoscale&nbsp;the&nbsp;Y-axis.)<br />//&nbsp;We&nbsp;could&nbsp;also&nbsp;use&nbsp;autoscaling&nbsp;for&nbsp;the&nbsp;x-axis&nbsp;but&nbsp;then&nbsp;it<br />//&nbsp;probably&nbsp;will&nbsp;start&nbsp;a&nbsp;little&nbsp;bit&nbsp;earlier&nbsp;than&nbsp;the&nbsp;first&nbsp;value<br />//&nbsp;to&nbsp;make&nbsp;the&nbsp;first&nbsp;value&nbsp;an&nbsp;even&nbsp;number&nbsp;as&nbsp;it&nbsp;sees&nbsp;the&nbsp;timestamp<br />//&nbsp;as&nbsp;an&nbsp;normal&nbsp;integer&nbsp;value.<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">SetScale</font><font color="#007700">(</font><font color="#DD0000">"intlin"</font><font color="#007700">,</font><font color="#0000BB">0</font><font color="#007700">,</font><font color="#0000BB">200</font><font color="#007700">,</font><font color="#0000BB">$now</font><font color="#007700">,</font><font color="#0000BB">$datax</font><font color="#007700">[</font><font color="#0000BB">$n</font><font color="#007700">-</font><font color="#0000BB">1</font><font color="#007700">]);<br /><br /></font><font color="#FF8000">//&nbsp;Setup&nbsp;the&nbsp;x-axis&nbsp;with&nbsp;a&nbsp;format&nbsp;callback&nbsp;to&nbsp;convert&nbsp;the&nbsp;timestamp<br />//&nbsp;to&nbsp;a&nbsp;user&nbsp;readable&nbsp;time<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">SetLabelFormatCallback</font><font color="#007700">(</font><font color="#DD0000">'TimeCallback'</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">SetLabelAngle</font><font color="#007700">(</font><font color="#0000BB">90</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;Create&nbsp;the&nbsp;line<br /></font><font color="#0000BB">$p1&nbsp;</font><font color="#007700">=&nbsp;new&nbsp;</font><font color="#0000BB">LinePlot</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">$p1</font><font color="#007700">-&gt;</font><font color="#0000BB">SetColor</font><font color="#007700">(</font><font color="#DD0000">"blue"</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;Set&nbsp;the&nbsp;fill&nbsp;color&nbsp;partly&nbsp;transparent<br /></font><font color="#0000BB">$p1</font><font color="#007700">-&gt;</font><font color="#0000BB">SetFillColor</font><font color="#007700">(</font><font color="#DD0000">"blue@0.4"</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;Add&nbsp;lineplot&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">$p1</font><font color="#007700">);<br /><br /></font><font color="#FF8000">//&nbsp;Output&nbsp;line<br /></font><font color="#0000BB">$graph</font><font color="#007700">-&gt;</font><font color="#0000BB">Stroke</font><font color="#007700">();<br /></font><font color="#0000BB">?&gt;<br /></font><br /><br /></font>
</code>