Home > Article > Backend Development > Application example: PHP generates chart pChart (with source code)_PHP tutorial
Bangke Home Tutorial Application example: PHP generates chart pChart (with source code)_PHP tutorial is an open source chart generation library, mainly involving 3 Classes: Application example: PHP generates chart pChart (with source code)_PHP tutorial.class, pData.class, pCache .class, can generate more than 20 simple or complex charts, and supports PNG, JPG, and GIF common image formats. The data source can come from Database, CSV, or of course handwritten. To use PHP, you need to enable the GD service. Let’s take a look at the workflow of Application example: PHP generates chart pChart (with source code)_PHP tutorial first:
It is mainly divided into three steps:
Look at a simple bar chart below:
The code is as follows:
include("Application example: PHP generates chart pChart (with source code)_PHP tutorial/pData.class"); include("Application example: PHP generates chart pChart (with source code)_PHP tutorial/Application example: PHP generates chart pChart (with source code)_PHP tutorial.class"); // Dataset definition $DataSet = new pData; //Chart data $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(); //Data legend $DataSet->SetSerieName("Microsoft","Serie1"); $DataSet->SetSerieName("IBM","Serie2"); $DataSet->SetSerieName("Google","Serie3"); // Initialize the graph $Test = new Application example: PHP generates chart pChart (with source code)_PHP tutorial(700,230); //Set chart size and style $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 //For bar charts, use drawBarGraph() $Test->drawBarGraph($DataSet->GetData(),$DataSet->GetDataDescription(),TRUE,80); // Finish the graph //Make legend, title, font and other attributes $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); //Generate chart $imageFile = "example12.png"; $Test->Render($imageFile); echo ''; ?> |