Example #16 - Importing CSV data
 
 This example shows how to import a CSV file containing headers and one data serie dedicated
 for the X Axis. Data importation is made using the 
 
ImportFromCSV
 function. The Y axis caption is set using the 
 
SetYAxisName
 function. Error reporting is turned on and messages are redirected on the graph calling
 the 
ReportWarnings("GD")
 function. X labels are rotated 90° left specifying the angle when calling the 
 
drawScale
 function.
 
 
Output :
 
 
 
   | 
    | 
  Note on the dataset | 
 
 
 Data are retrieved from a CSV file named 
CO2.csv. This file contains many data colums. The first row
 contains headers that will be used to name series (Months). Column #1 is used as index (Years).
 We are only loading row 1,2,3 and 4 from this file.
 
 
Click here to download CO2.csv
 Source code :
 
 <?php
  // Standard inclusions   
  include("pChart/pData.class");
  include("pChart/pChart.class");
  // Dataset definition 
  $DataSet = new pData;
  $DataSet->ImportFromCSV("Sample/CO2.csv",",",array(1,2,3,4),TRUE,0);
  $DataSet->AddAllSeries();
  $DataSet->SetAbsciseLabelSerie();
  $DataSet->SetYAxisName("CO2 concentrations");
  // Initialise the graph
  $Test = new pChart(700,230);
  $Test->reportWarnings("GD");
  $Test->setFontProperties("Fonts/tahoma.ttf",8);
  $Test->setGraphArea(60,30,680,180);
  $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,90,2);
  $Test->drawGrid(4,TRUE,230,230,230,50);
  // Draw the 0 line
  $Test->setFontProperties("Fonts/tahoma.ttf",6);
  $Test->drawTreshold(0,143,55,72,TRUE,TRUE);
  // Draw the line graph
  $Test->drawLineGraph($DataSet->GetData(),$DataSet->GetDataDescription());
  $Test->drawPlotGraph($DataSet->GetData(),$DataSet->GetDataDescription(),3,2,255,255,255);
  // Finish the graph
  $Test->setFontProperties("Fonts/tahoma.ttf",8);   
  $Test->drawLegend(70,40,$DataSet->GetDataDescription(),255,255,255);   
  $Test->setFontProperties("Fonts/tahoma.ttf",10);
  $Test->drawTitle(60,22,"CO2 concentrations at Mauna Loa",50,50,50,585);
  $Test->Render("example16.png");   
 ?>
 
 
   | 
    | 
  If you want to send the picture directly in a browser, replace the Render() command by Stroke(). | 
 
 
 
  
   
     | 
      | 
    Last updated on 07/27/2008 |