Home > php教程 > php手册 > 应用实例:PHP生成图表pChart(附源码)

应用实例:PHP生成图表pChart(附源码)

WBOY
Release: 2016-06-13 11:38:39
Original
941 people have browsed it

  帮客之家教程 pChart是一个开源的图表生成库,主要涉及3个Class:pChart.class, pData.class, pCache.class,可生成20多种简单或复杂的图表,支持PNG,JPG,GIF通用图片格式。数据源可以来自于Database,CSV,当然也可以手写。使用该程序PHP需要开启GD服务,先来看看pChart的工作流程:

  

  主要分为三步:

  1. * 读取用于生成图表数据(数据库、文件)
  2. * 设计图表样式(圆角、底色等)
  3. * 制作标签、题目、图例并生成图表

  下面看一个简单的柱状图表:

  

  代码如下:

  // Standard inclusions  
include("pChart/pData.class");
include("pChart/pChart.class");

// Dataset definition
$DataSet = new pData;
//图表数据
$DataSet->AddPoint(array(1,4,-3,2,-3,3,2,1,0,7,4),"Serie1");
$DataSet->AddPoint(array(3,3,-4,1,-2,2,1,0,-1,6,3),"Serie2");
$DataSet->AddPoint(array(4,1,2,-1,-4,-2,3,2,1,2,2),"Serie3");
$DataSet->AddAllSeries();
$DataSet->SetAbsciseLabelSerie();
//数据图例
$DataSet->SetSerieName("Microsoft","Serie1");
$DataSet->SetSerieName("IBM","Serie2");
$DataSet->SetSerieName("Google","Serie3");

// Initialise the graph
$Test = new pChart(700,230);
//设置图表尺寸、样式
$Test->setFontProperties("Fonts/tahoma.ttf",8);
$Test->setGraphArea(50,30,680,200);
$Test->drawFilledRoundedRectangle(7,7,693,223,5,240,240,240);
$Test->drawRoundedRectangle(5,5,695,225,5,230,230,230);
$Test->drawGraphArea(255,255,255,TRUE);
$Test->drawScale($DataSet->GetData(),$DataSet->GetDataDescription(),SCALE_NORMAL,150,150,150,TRUE,0,2,TRUE);
$Test->drawGrid(4,TRUE,230,230,230,50);

// Draw the 0 line
$Test->setFontProperties("Fonts/MankSans.ttf",6);
$Test->drawTreshold(0,143,55,72,TRUE,TRUE);

// Draw the bar graph
//柱状图要使用drawBarGraph()
$Test->drawBarGraph($DataSet->GetData(),$DataSet->GetDataDescription(),TRUE,80);


// Finish the graph
//制作图例、标题、字体等属性
$Test->setFontProperties("Fonts/MankSans.ttf",10);
$Test->drawLegend(596,150,$DataSet->GetDataDescription(),255,255,255);
$Test->setFontProperties("Fonts/MankSans.ttf",10);
$Test->drawTitle(50,22,"Example",50,50,50,585);

//生成图表
$imageFile = "example12.png";
$Test->Render($imageFile);
echo '应用实例:PHP生成图表pChart(附源码)';
?>

  • 共3页:
  • 上一页
  • 1
  • 2
  • 3
  • 下一页
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template