站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        解析PHP生成圖表pChart的示例

        解析PHP生成圖表pChart的示例

        pChart是一個(gè)開源的圖表生成庫,主要涉及3個(gè)Class:pChart.class, pData.class, pCache.class,可生成20多種簡單或復(fù)雜的圖表,支持PNG,JPG,GIF通用圖片格式。數(shù)據(jù)源可以來自于Database,CSV,當(dāng)然也可以手寫。使用該程序PHP需要開啟GD服務(wù),先來看看pChart的工作流程:

        解析PHP生成圖表pChart的示例

        相關(guān)學(xué)習(xí)推薦:PHP編程從入門到精通

        主要分為三步:

        1. * 讀取用于生成圖表數(shù)據(jù)(數(shù)據(jù)庫、文件)
        2. * 設(shè)計(jì)圖表樣式(圓角、底色等)
        3. * 制作標(biāo)簽、題目、圖例并生成圖表

        下面看一個(gè)簡單的柱狀圖表:

        解析PHP生成圖表pChart的示例

        代碼如下:

        <?php  // Standard inclusions   include("pChart/pData.class");  include("pChart/pChart.class");   // Dataset definition   $DataSet = new pData;  //圖表數(shù)據(jù)  $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();  //數(shù)據(jù)圖例  $DataSet->SetSerieName("Microsoft","Serie1");  $DataSet->SetSerieName("IBM","Serie2");  $DataSet->SetSerieName("Google","Serie3");   // Initialise the graph  $Test = new pChart(700,230);  //設(shè)置圖表尺寸、樣式  $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  //制作圖例、標(biāo)題、字體等屬性  $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 '<img src="'.$imageFile.'">'; ?>

        這個(gè)是雷達(dá)效果的:

        解析PHP生成圖表pChart的示例

        代碼:

        <?php  // Standard inclusions   include("pChart/pData.class");  include("pChart/pChart.class");   // Dataset definition   $DataSet = new pData;  $DataSet->AddPoint(array("Memory","Disk","Network","Slots","CPU"),"Label");  $DataSet->AddPoint(array(6,4,7,4,5),"Serie1");  $DataSet->AddPoint(array(2,3,5,2,4),"Serie2");  $DataSet->AddSerie("Serie1");  $DataSet->AddSerie("Serie2");  $DataSet->SetAbsciseLabelSerie("Label");    $DataSet->SetSerieName("Reference","Serie1");  $DataSet->SetSerieName("Tested computer","Serie2");   // Initialise the graph  $Test = new pChart(400,400);  $Test->setFontProperties("Fonts/tahoma.ttf",8);  $Test->drawFilledRoundedRectangle(7,7,393,393,5,240,240,240);  $Test->drawRoundedRectangle(5,5,395,395,5,230,230,230);  $Test->setGraphArea(30,30,370,370);  $Test->drawFilledRoundedRectangle(30,30,370,370,5,255,255,255);  $Test->drawRoundedRectangle(30,30,370,370,5,220,220,220);   // Draw the radar graph  //要使用drawRadarAxis()生成雷達(dá)效果  $Test->drawRadarAxis($DataSet->GetData(),$DataSet->GetDataDescription(),TRUE,20,120,120,120,230,230,230);  $Test->drawFilledRadar($DataSet->GetData(),$DataSet->GetDataDescription(),50,20);   // Finish the graph  $Test->drawLegend(15,15,$DataSet->GetDataDescription(),255,255,255);  $Test->setFontProperties("Fonts/tahoma.ttf",10);  $Test->drawTitle(0,22,"Example",50,50,50,400);    $imageFile = "example8.png";  $Test->Render($imageFile);  echo '<img src="'.$imageFile.'">'; ?>

        再看幾個(gè)其他的效果

        1,餅圖:

        解析PHP生成圖表pChart的示例

        2, 雙座標(biāo)曲線圖:

        解析PHP生成圖表pChart的示例

        3, 層疊柱狀圖:

        解析PHP生成圖表pChart的示例

        4, 多圖表:

        解析PHP生成圖表pChart的示例

        圖表的種類已經(jīng)相當(dāng)豐富了,具體圖表設(shè)置請(qǐng)參考

        http://pchart.sourceforge.net/documentation.php?topic=pChart

        ::源代碼下載:::

        http://xiazai.jb51.net/202007/yuanma/pChart_jb51.rar

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
        主站蜘蛛池模板: 久久91精品久久91综合| 99久久精品国产一区二区蜜芽| 国产精品免费精品自在线观看| 午夜精品久久影院蜜桃| 欧美日激情日韩精品| 国产精品人成在线播放新网站| 亚洲av无码成人精品区在线播放| 国产精品成| 国产精品久久亚洲不卡动漫| 久久亚洲中文字幕精品有坂深雪| 人妻少妇精品系列| 国产区精品高清在线观看| 国产欧美国产精品第一区| 精品亚洲国产成AV人片传媒| 亚洲精品无码专区在线播放| 国产在线91精品入口| 777国产盗摄偷窥精品0OOO| 99视频在线观看精品| 国产精品多人p群无码| 无码日韩精品一区二区免费| 无码人妻精品一区二区蜜桃AV| 精品久久久久久久久久久久久久久| 66精品综合久久久久久久| 欧美视频精品一区二区三区 | 午夜亚洲av永久无码精品| 精品人妻系列无码人妻免费视频 | 热99re久久国超精品首页| 国产成人精品久久二区二区| 国产精品亚洲A∨天堂不卡| 精品免费人成视频app| 久久精品国产亚洲AV无码偷窥| 无码人妻精品一区二区三区66| 亚洲精品乱码久久久久久自慰| 亚洲精品高清一二区久久| 亚洲精品视频在线看| 亚洲精品无码午夜福利中文字幕 | 久久国产精品99国产精| 国精品午夜福利视频不卡麻豆| 精品人妻系列无码天堂| 国产精品免费一区二区三区四区| 国产精品无码日韩欧|