PHP图表生成库,PHPlot 5.8.0 发布
openkk 13年前
<p><a href="/misc/goto?guid=4958323561219070566" target="_blank">PHPLOT </a>是一个用来创建图表的PHP图形类,需要 PHP5 的支持。PHPLot使用PHP的GD扩展来生成 PNG/GIF/JPEG 格式图片。</p> <p>PHPlot 5.8.0 发布,该版本新增 streaming video 图表,更多关于 Label 格式化的控制,支持 PHPlot 对象的序列化,完善了文档。</p> <p><img style="width:536px;height:357px;" alt="PHP图表生成库,PHPlot 5.8.0 发布" src="https://simg.open-open.com/show/cc4b895d52ae382cebce903b62811386.png" /></p> <pre class="brush:php; toolbar: true; auto-links: false;">生成上面图形的代码如下: # PHPlot Demo # 2008-01-09 ljb # For more information see http://sourceforge.net/projects/phplot/ # Load the PHPlot class library: require_once 'phplot.php'; # Define the data array: Label, the 3 data sets. # Year, Features, Bugs, Happy Users: $data = array( array('2001', 60, 35, 20), array('2002', 65, 30, 30), array('2003', 70, 25, 40), array('2004', 72, 20, 60), array('2005', 75, 15, 70), array('2006', 77, 10, 80), array('2007', 80, 5, 90), ); # Create a PHPlot object which will make a 600x400 pixel image: $p = new PHPlot(600, 400); # Use TrueType fonts: $p->SetDefaultTTFont('./arial.ttf'); # Set the main plot title: $p->SetTitle('PHPlot Customer Satisfaction (estimated)'); # Select the data array representation and store the data: $p->SetDataType('text-data'); $p->SetDataValues($data); # Select the plot type - bar chart: $p->SetPlotType('bars'); # Define the data range. PHPlot can do this automatically, but not as well. $p->SetPlotAreaWorld(0, 0, 7, 100); # Select an overall image background color and another color under the plot: $p->SetBackgroundColor('#ffffcc'); $p->SetDrawPlotAreaBackground(True); $p->SetPlotBgColor('#ffffff'); # Draw lines on all 4 sides of the plot: $p->SetPlotBorderType('full'); # Set a 3 line legend, and position it in the upper left corner: $p->SetLegend(array('Features', 'Bugs', 'Happy Users')); $p->SetLegendWorld(0.1, 95); # Turn data labels on, and all ticks and tick labels off: $p->SetXDataLabelPos('plotdown'); $p->SetXTickPos('none'); $p->SetXTickLabelPos('none'); $p->SetYTickPos('none'); $p->SetYTickLabelPos('none'); # Generate and output the graph now: $p->DrawGraph();</pre> <p></p>