pChart是一個(gè)開源的圖表生成庫(kù),主要涉及3個(gè)Class: pChart.class , pData.class , pCache.class ,可生成20多種簡(jiǎn)單或復(fù)雜的圖表,支持PNG,JPG,GIF通用圖片格式。數(shù)據(jù)源可以來自于Database,CSV,當(dāng)然也可以手寫。使用該程序PHP需要開啟GD服務(wù),先來看看p
網(wǎng)站設(shè)計(jì)制作過程拒絕使用模板建站;使用PHP+MYSQL原生開發(fā)可交付網(wǎng)站源代碼;符合網(wǎng)站優(yōu)化排名的后臺(tái)管理系統(tǒng);成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)收費(fèi)合理;免費(fèi)進(jìn)行網(wǎng)站備案等企業(yè)網(wǎng)站建設(shè)一條龍服務(wù).我們是一家持續(xù)穩(wěn)定運(yùn)營(yíng)了十余年的成都創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司。
pChart是一個(gè)開源的圖表生成庫(kù),主要涉及3個(gè)Class:,?,?,可生成20多種簡(jiǎn)單或復(fù)雜的圖表,支持PNG,JPG,GIF通用圖片格式。數(shù)據(jù)源可以來自于Database,CSV,當(dāng)然也可以手寫。使用該程序PHP需要開啟GD服務(wù),先來看看pChart的工作流程:
?
主要分為三步:
* 讀取用于生成圖表數(shù)據(jù)(數(shù)據(jù)庫(kù)、文件)
* 設(shè)計(jì)圖表樣式(圓角、底色等)
* 制作標(biāo)簽、題目、圖例并生成圖表
下面看一個(gè)簡(jiǎn)單的柱狀圖表:
?
代碼如下:
?php?// Standard inclusionsinclude("pChart/pData.class");
include("pChart/pChart.class");
// Dataset definition?$DataSet?=?newpData;
//圖表數(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?=?newpChart(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.'"'
恩,用jpgraph是非常簡(jiǎn)單的。
你先把溫度數(shù)據(jù)存入數(shù)組,然后jpgraph調(diào)用數(shù)組數(shù)據(jù)折線圖就能出來了。
這是一個(gè)表格循環(huán)的問題
原理是一個(gè)大表格,里邊有三列表格,每一列表格中又套一個(gè)表格,這個(gè)表格分三行顯示
思考:
每隔3列換行一次,實(shí)現(xiàn)一行3列,多行3列
table
tr
?php
//從這個(gè)地方循環(huán),利用tr和/tr來分行
$i = 0;
while($myrow=mysql_fetch_array($rs)){
?
td
table
//內(nèi)表循環(huán)開始
tr
td1/td
/tr
tr
td1(1)/td
/tr
tr
td1(2)/td
/tr
//內(nèi)部循環(huán)結(jié)束
/table
/td
?php
}
//既然是遇到3列一換行,那么/3
if ($i / 3) echo "/tr";
//以上這句話是最重要的,如果能/3那么顯示/tr,那么,一顯示/tr,那就是換一行了
?
/table
你可以 試試