PHP使用JPGRAPH制作圓柱圖的方法詳解
本文實例講述了PHP使用JPGRAPH制作圓柱圖的方法。分享給大家供大家參考,具體如下:
制作圓柱圖像的要點
首先,要使用jpgraph庫,我們先要去官網(wǎng)進行下載,網(wǎng)址:https://jpgraph.net/。 下載完畢后將他解壓到
這個文件夾需要自己手動添加,然后在相同的路徑下創(chuàng)建一個文件 命名為jpgraph.php
| 函數(shù)名 | 作用 | 
|---|---|
| new Graph | 創(chuàng)建一個新的Graph對象 | 
| jpgraph_bar.php | 加載畫出圓柱的文件 | 
| jpgraph.php | 加載使用jp庫的文件 | 
| SetScale | 設置刻度樣式 | 
| new BarPlot | 創(chuàng)建一個新的BarPlot對象 | 
| SetFillColor | 用于指定條形的填充顏色 | 
| SetFont | 設置字體 | 
| xaxis -> Set | 設置x軸標題 | 
| yaxis -> Set | 設置y軸標題 | 
| title -> Set | 設置主標題 | 
| Stroke | 輸出圖像 | 
| SetColor | 設置標題顏色 | 
| SetMargin | 設置間距 | 
| SetTickLabels | 獲取數(shù)組里的元素并輸出 | 
| value -> Show | 顯示值 | 
| graph_theme | 設置主題 | 
這是我們本次需要用到的一些函數(shù),鑒于我的表達能力不是特別好,你們覺得有點看不懂的話,可以去看一下別的博客來幫助自己理解
現(xiàn)在開始編寫我們的代碼
首先,我們要輸出的是圓柱,那么我們則要輸入
require_once ("jpgraph/src/jpgraph.php");
require_once ("jpgraph/src/jpgraph_bar.php");
ok,這個時候文件已經(jīng)加載了,為了避免你們目錄和我不一致導致報錯無法實現(xiàn),我把我的文件存在位置截了下來,如下:
接下來,我們要創(chuàng)建兩個數(shù)組,一個是圓柱數(shù)據(jù),另一個是x軸標題數(shù)據(jù)
$date = array(19,23,34,38,45,67,71,78,85,87,90,96);//此處是圓柱數(shù)據(jù)
$xdate = array("1","2","3","4","5","6","7","8","9","10","11","12");//此處是x軸的標題數(shù)據(jù)
這個時候,我們已經(jīng)完成了我們繪制圖形所需要的數(shù)據(jù)了,接下來就是創(chuàng)建圓柱和調(diào)整它的顏色了
所要做的代碼如下:
$graph = new Graph (500,400);//創(chuàng)建一個新的Graph對象,其寬和高分別為500,300
$graph -> SetScale("textlin");//設置其刻印樣式
$graph -> SetShadow();//設置其陰影樣式
$graph -> img -> SetMargin(40,30,40,50);//設置其上間距40,右間距30,下間距40,左間距50
$graph -> graph_theme = null;//設置他的主題為空,使得下面的元素可實現(xiàn)
$bplot = new BarPlot ($date);//創(chuàng)建BarPlot對象
$bplot -> SetColor("pink");//設置BarPlot的顏色
$bplot -> value -> Show("");//顯示他的值
$graph ->Add($bplot);//把他的值放入$graph里
$graph -> title -> Set(iconv("utf-8","gb2312//IGNORE","年度收支表"));//設置標題名字并進行轉(zhuǎn)換
$graph -> xaxis -> title -> Set(iconv("utf-8","gb2312//IGNORE","月份"));//同上,設置x軸標題
$graph -> yaxis -> title -> Set(iconv("utf-8","gb2312//IGNORE","總金額(兆美元)"));//同上,設置y軸標題
$graph -> title -> SetColor("red");//設置標題顏色
$graph -> title -> SetMargin(10);//設置標題間距
$graph -> xaxis -> title -> SetMargin(1);//設置x軸標題間距
$graph -> xaxis ->SetTickLabels($xdate);//接收xdate數(shù)組里的元素
$graph -> title -> SetFont(FF_SIMSUN,FS_BOLD);//設置字體樣式
$graph -> xaxis -> title ->SetFont(FF_SIMSUN,FS_BOLD);
$graph -> yaxis -> title ->SetFont(FF_SIMSUN,FS_BOLD);
$graph -> xaxis -> SetFont(FF_SIMSUN,FS_BOLD);//設置x軸里所有的字體樣式
$graph -> Stroke();//輸出
到這里,我們的圓柱就已經(jīng)完成了,完整的代碼如下:
<?php
require_once ("jpgraph/src/jpgraph.php");
require_once ("jpgraph/src/jpgraph_bar.php");
$date = array(19,23,34,38,45,67,71,78,85,87,90,96);
$xdate = array("1","2","3","4","5","6","7","8","9","10","11","12");
$graph = new Graph (500,400);
$graph->SetScale("textlin");
$graph->SetShadow();
$graph->img->SetMargin(40,30,40,50);
$graph->graph_theme = null;
$barplot = new BarPlot($date);
$barplot->SetFillColor("pink");
$barplot->value->Show();
$graph->Add($barplot);
$graph->title->Set(iconv("utf-8","GB2312//IGNORE","年度收支表"));
$graph->xaxis->title->Set(iconv("utf-8","GB2312//IGNORE","月份"));
$graph->yaxis->title->Set(iconv("utf-8","GB2312//IGNORE","總金額(兆美元)"));
$graph->title->SetColor("red");
$graph->title->SetMargin(10);
$graph->xaxis->title->SetMargin(1);
$graph->xaxis->SetTickLabels($xdate);
$graph->title->SetFont(FF_SIMSUN,FS_BOLD);
$graph->yaxis->title->SetFont(FF_SIMSUN,FS_BOLD);
$graph->xaxis->title->SetFont(FF_SIMSUN,FS_BOLD);
$graph->xaxis->SetFont(FF_SIMSUN,FS_BOLD);
$graph -> Stroke();
?>
最終效果如下圖:
更多關于PHP相關內(nèi)容感興趣的讀者可查看本站專題:《PHP圖形與圖片操作技巧匯總》、《PHP基本語法入門教程》、《php面向?qū)ο蟪绦蛟O計入門教程》、《PHP網(wǎng)絡編程技巧總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
上一篇:PHP設計模式之策略模式(Strategy)入門與應用案例詳解
欄 目:PHP編程
本文地址:http://www.jygsgssxh.com/a1/PHPbiancheng/11040.html
您可能感興趣的文章
- 04-02關于txt數(shù)據(jù)庫php的信息
 - 04-02php本站才可以請求數(shù)據(jù) php本地數(shù)據(jù)庫
 - 04-02網(wǎng)頁里php操作數(shù)據(jù)庫 php網(wǎng)頁例子
 - 04-02php打印請求數(shù)據(jù) php打印輸出結(jié)果
 - 04-02php數(shù)據(jù)庫地址 phpstudy 數(shù)據(jù)庫
 - 04-02php插入數(shù)據(jù)庫為亂碼 php連接數(shù)據(jù)庫亂碼
 - 04-02php數(shù)據(jù)庫數(shù)據(jù)相加 php數(shù)據(jù)庫添加數(shù)據(jù)語句
 - 04-02php數(shù)據(jù)庫輸入變量 php里輸出數(shù)據(jù)庫數(shù)據(jù)函數(shù)
 - 04-02數(shù)據(jù)權限架構(gòu)思路php 數(shù)據(jù)權限設計方案
 - 04-02php如何用導入數(shù)據(jù) php用來導入其他文件的語句
 


閱讀排行
本欄相關
- 04-02php本站才可以請求數(shù)據(jù) php本地數(shù)據(jù)庫
 - 04-02關于txt數(shù)據(jù)庫php的信息
 - 04-02php打印請求數(shù)據(jù) php打印輸出結(jié)果
 - 04-02網(wǎng)頁里php操作數(shù)據(jù)庫 php網(wǎng)頁例子
 - 04-02php插入數(shù)據(jù)庫為亂碼 php連接數(shù)據(jù)庫亂
 - 04-02php數(shù)據(jù)庫地址 phpstudy 數(shù)據(jù)庫
 - 04-02php數(shù)據(jù)庫數(shù)據(jù)相加 php數(shù)據(jù)庫添加數(shù)據(jù)
 - 04-02數(shù)據(jù)權限架構(gòu)思路php 數(shù)據(jù)權限設計方
 - 04-02php數(shù)據(jù)庫輸入變量 php里輸出數(shù)據(jù)庫數(shù)
 - 04-02php如何用導入數(shù)據(jù) php用來導入其他文
 
隨機閱讀
- 01-10C#中split用法實例總結(jié)
 - 04-02jquery與jsp,用jquery
 - 08-05織夢dedecms什么時候用欄目交叉功能?
 - 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
 - 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
 - 01-10SublimeText編譯C開發(fā)環(huán)境設置
 - 01-10使用C語言求解撲克牌的順子及n個骰子
 - 01-10delphi制作wav文件的方法
 - 08-05DEDE織夢data目錄下的sessions文件夾有什
 - 01-11ajax實現(xiàn)頁面的局部加載
 


