Blame | Letzte Änderung | Log anzeigen | RSS feed
<code><font color="#000000"><font color="#0000BB"><?php<br /></font><font color="#007700">include (</font><font color="#DD0000">"../jpgraph.php"</font><font color="#007700">);<br />include (</font><font color="#DD0000">"../jpgraph_bar.php"</font><font color="#007700">);<br /><br /></font><font color="#0000BB">$datay</font><font color="#007700">=array(</font><font color="#0000BB">2</font><font color="#007700">,</font><font color="#0000BB">3</font><font color="#007700">,-</font><font color="#0000BB">5</font><font color="#007700">,</font><font color="#0000BB">8</font><font color="#007700">,</font><font color="#0000BB">12</font><font color="#007700">,</font><font color="#0000BB">6</font><font color="#007700">,</font><font color="#0000BB">3</font><font color="#007700">);<br /></font><font color="#0000BB">$datax</font><font color="#007700">=array(</font><font color="#DD0000">"Jan"</font><font color="#007700">,</font><font color="#DD0000">"Feb"</font><font color="#007700">,</font><font color="#DD0000">"Mar"</font><font color="#007700">,</font><font color="#DD0000">"Apr"</font><font color="#007700">,</font><font color="#DD0000">"May"</font><font color="#007700">,</font><font color="#DD0000">"Jun"</font><font color="#007700">,</font><font color="#DD0000">"Jul"</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Size of graph<br /></font><font color="#0000BB">$width</font><font color="#007700">=</font><font color="#0000BB">400</font><font color="#007700">; <br /></font><font color="#0000BB">$height</font><font color="#007700">=</font><font color="#0000BB">500</font><font color="#007700">;<br /><br /></font><font color="#FF8000">// Set the basic parameters of the 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">$width</font><font color="#007700">,</font><font color="#0000BB">$height</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">"textlin"</font><font color="#007700">);<br /><br /></font><font color="#0000BB">$top </font><font color="#007700">= </font><font color="#0000BB">50</font><font color="#007700">;<br /></font><font color="#0000BB">$bottom </font><font color="#007700">= </font><font color="#0000BB">80</font><font color="#007700">;<br /></font><font color="#0000BB">$left </font><font color="#007700">= </font><font color="#0000BB">50</font><font color="#007700">;<br /></font><font color="#0000BB">$right </font><font color="#007700">= </font><font color="#0000BB">20</font><font color="#007700">;<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">Set90AndMargin</font><font color="#007700">(</font><font color="#0000BB">$left</font><font color="#007700">,</font><font color="#0000BB">$right</font><font color="#007700">,</font><font color="#0000BB">$top</font><font color="#007700">,</font><font color="#0000BB">$bottom</font><font color="#007700">);<br /><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><font color="#DD0000">'min'</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Nice shadow<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">SetShadow</font><font color="#007700">();<br /><br /></font><font color="#FF8000">// Setup title<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">"Horizontal bar graph ex 3"</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">SetFont</font><font color="#007700">(</font><font color="#0000BB">FF_VERDANA</font><font color="#007700">,</font><font color="#0000BB">FS_BOLD</font><font color="#007700">,</font><font color="#0000BB">14</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">subtitle</font><font color="#007700">-></font><font color="#0000BB">Set</font><font color="#007700">(</font><font color="#DD0000">"(Axis at bottom)"</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Setup X-axis<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">xaxis</font><font color="#007700">-></font><font color="#0000BB">SetTickLabels</font><font color="#007700">(</font><font color="#0000BB">$datax</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">xaxis</font><font color="#007700">-></font><font color="#0000BB">SetFont</font><font color="#007700">(</font><font color="#0000BB">FF_FONT2</font><font color="#007700">,</font><font color="#0000BB">FS_BOLD</font><font color="#007700">,</font><font color="#0000BB">12</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Some extra margin looks nicer<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">xaxis</font><font color="#007700">-></font><font color="#0000BB">SetLabelMargin</font><font color="#007700">(</font><font color="#0000BB">5</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Label align for X-axis<br /></font><font color="#0000BB">$graph</font><fontcolor="#007700">-></font><font color="#0000BB">xaxis</font><font color="#007700">-></font><font color="#0000BB">SetLabelAlign</font><font color="#007700">(</font><font color="#DD0000">'right'</font><font color="#007700">,</font><font color="#DD0000">'center'</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Add some grace to y-axis so the bars doesn't go<br />// all the way to the end of the plot area<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">20</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Setup the Y-axis to be displayed in the bottom of the <br />// graph. We also finetune the exact layout of the title,<br />// ticks and labels to make them look nice.<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">SetPos</font><font color="#007700">(</font><font color="#DD0000">'max'</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// First make the labels look right<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">SetLabelAlign</font><font color="#007700">(</font><font color="#DD0000">'center'</font><font color="#007700">,</font><font color="#DD0000">'top'</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">SetLabelFormat</font><font color="#007700">(</font><font color="#DD0000">'%d'</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">SetLabelSide</font><font color="#007700">(</font><font color="#0000BB">SIDE_RIGHT</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// The fix the tick marks<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">SetTickSide</font><font color="#007700">(</font><font color="#0000BB">SIDE_LEFT</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Finally setup the title<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">SetTitleSide</font><font color="#007700">(</font><font color="#0000BB">SIDE_RIGHT</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">SetTitleMargin</font><font color="#007700">(</font><font color="#0000BB">35</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// To align the title to the right use :<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">SetTitle</font><font color="#007700">(</font><font color="#DD0000">'Turnaround 2002'</font><font color="#007700">,</font><font color="#DD0000">'high'</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">title</font><font color="#007700">-></font><font color="#0000BB">Align</font><font color="#007700">(</font><font color="#DD0000">'right'</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// To center the title use :<br />//$graph->yaxis->SetTitle('Turnaround 2002','center');<br />//$graph->yaxis->title->Align('center');<br /><br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">title</font><font color="#007700">-></font><font color="#0000BB">SetFont</font><font color="#007700">(</font><font color="#0000BB">FF_ARIAL</font><font color="#007700">,</font><font color="#0000BB">FS_BOLD</font><font color="#007700">,</font><font color="#0000BB">12</font><font color="#007700">);<br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">title</font><font color="#007700">-></font><font color="#0000BB">SetAngle</font><font color="#007700">(</font><font color="#0000BB">0</font><font color="#007700">);<br /><br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">yaxis</font><font color="#007700">-></font><font color="#0000BB">SetFont</font><font color="#007700">(</font><font color="#0000BB">FF_FONT2</font><font color="#007700">,</font><font color="#0000BB">FS_NORMAL</font><font color="#007700">);<br /></font><font color="#FF8000">// If you want the labels at an angle other than 0 or 90<br />// you need to use TTF fonts<br />//$graph->yaxis->SetLabelAngle(0);<br /><br />// Now create a bar pot<br /></font><font color="#0000BB">$bplot </font><font color="#007700">= new </font><font color="#0000BB">BarPlot</font><font color="#007700">(</font><font color="#0000BB">$datay</font><font color="#007700">);<br /></font><font color="#0000BB">$bplot</font><font color="#007700">-></font><font color="#0000BB">SetFillColor</font><font color="#007700">(</font><font color="#DD0000">"orange"</font><font color="#007700">);<br /></font><font color="#0000BB">$bplot</font><font color="#007700">-></font><font color="#0000BB">SetShadow</font><font color="#007700">();<br /><br /></font><font color="#FF8000">//You can change the width of the bars if you like<br />//$bplot->SetWidth(0.5);<br /><br />// We want to display the value of each bar at the top<br /></font><font color="#0000BB">$bplot</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">$bplot</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_ARIAL</font><font color="#007700">,</font><font color="#0000BB">FS_BOLD</font><font color="#007700">,</font><font color="#0000BB">12</font><font color="#007700">);<br /></font><font color="#0000BB">$bplot</font><font color="#007700">-></font><font color="#0000BB">value</font><font color="#007700">-></font><font color="#0000BB">SetAlign</font><font color="#007700">(</font><font color="#DD0000">'left'</font><font color="#007700">,</font><font color="#DD0000">'center'</font><font color="#007700">);<br /></font><font color="#0000BB">$bplot</font><font color="#007700">-></font><font color="#0000BB">value</font><font color="#007700">-></font><font color="#0000BB">SetColor</font><font color="#007700">(</font><font color="#DD0000">"black"</font><font color="#007700">,</font><font color="#DD0000">"darkred"</font><font color="#007700">);<br /></font><font color="#0000BB">$bplot</font><font color="#007700">-></font><font color="#0000BB">value</font><font color="#007700">-></font><font color="#0000BB">SetFormat</font><font color="#007700">(</font><font color="#DD0000">'%.1f mkr'</font><font color="#007700">);<br /><br /></font><font color="#FF8000">// Add the bar 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">$bplot</font><font color="#007700">);<br /><br /><br /></font><font color="#0000BB">$graph</font><font color="#007700">-></font><font color="#0000BB">Stroke</font><font color="#007700">();<br /></font><font color="#0000BB">?><br /></font></font></code>