Fabio Donatantonio

Resta connesso

Software Developer / Adjunct Professor

Grafici con PHP e la libreria Pchart

Le utilissime librerie GD di PHP permettono di disegnare e modificare immagini, ben più difficile è realizzare grafici partendo da una serie di dati o da un database.
La libreria PChart permette di fare tutto ciò con estrema semplicità e tutto in poche linee di codice, realizzeremo grafici a barre, a torta e lineari utilizzando al meglio le librerie GD.

E’ innanzitutto necessario scaricare PChart da qui.

Vediamo ora come realizzare un semplice grafico utilizzando la libreria.

<?php
// importiamo la libreria
include("pChart/pData.class");
include("pChart/pChart.class");

// carico i valori da rappresentare graficamente - utilizzo 2 array
$DataSet = new pData;
$DataSet->AddPoint(array(0,3,6,2,3,1,4,8,10,6,3,5,6),"Serie1"); 
$DataSet->AddPoint(array(0,1,3,4,1,3,7,5,6,7,3,8,5),"Serie2");
$DataSet->AddAllSeries();

// imposto la legenda
$DataSet->SetSerieName("La prima serie","Serie1");      
$DataSet->SetSerieName("La seconda serie","Serie2");  

// imposto un nome agli assi cartesiani
$DataSet->SetXAxisName("Mesi");
$DataSet->SetYAxisName("Valore raggiunto");

$Test = new pChart(500,250);

// imposto l'aspetto del grafico
$Test->setFixedScale(0,11);   
$Test->setFontProperties("Fonts/tahoma.ttf",8);
$Test->setGraphArea(50,40,500,210);
$Test->drawFilledRoundedRectangle(7,7,543,243,5,240,240,240);      
$Test->drawRoundedRectangle(5,5,550,250,5,400,400,400);      
$Test->drawGraphArea(255,255,255,TRUE);   
$Test->drawScale($DataSet->GetData(),$DataSet->GetDataDescription(), SCALE_NORMAL,150,150,150,TRUE,0,0);      
$Test->drawGrid(10,TRUE,230,230,230,50);

// imposto il tipo di grafico - lineare, curvilineo, torta ecc...
$Test->setColorPalette(0,0,255,0);
$Test->setLineStyle(1.5);       
$Test->drawTreshold(0,143,55,72,TRUE,TRUE);      
$Test->drawCubicCurve($DataSet->GetData(),$DataSet->GetDataDescription());
$Test->drawPlotGraph($DataSet->GetData(),$DataSet->GetDataDescription(), 1.5,1.5,0,0,255);

// imposto titolo e legenda del grafico e quindi lo realizzo
$Test->drawLegend(55,40,$DataSet->GetDataDescription(),255,255,255);      
$Test->setFontProperties("Fonts/tahoma.ttf",10);      
$Test->drawTitle(100,22,"Il primo grafico",0,0,100);
$Test->Render("grafico.png");  
?>

Quello che abbiamo realizzato è un semplice grafico introduttivo. Studiando la documentazione di PChart si potranno realizzare grafici complessi e graficamente accattivanti. Si potrà ad esempio prelevare i dati da un file excel, personalizzare gli assi cartesiani, i colori e le scale e sbizzarrirsi a creare grafici tridimensionali.

Ecco il risultato del nostro script:

Grafico
Fabio Donatantonio

Fabio Donatantonio. Analista e sviluppatore full-stack di applicazioni web in linguaggio PHP. Professore a Contratto per le cattedre di Fondamenti di Informatica e Archivistica Digitale presso Università degli Studi eCampus. Dal 2008 curatore del sito www.donatantonio.net, da sempre appassionato di programmazione, mare, sigari e... musica.

Ti potrebbe piacere anche

Leave a reply

Your email address will not be published. Required fields are marked *

 

Didattica

Università degli Studi eCampus
Data Evento
05/07/2019
11:30
Esame Archivistica Digitale e Informatica per le Scienze Umane - Cds Filologia Moderna - Lettere - Novedrate(CO)
05/07/2019
11:30
Esame Introduzione all'Archivistica Digitale e all'Informatica per le Scienze Umane - Cds Letteratura, Arte, Musica e Spettacolo - Lettere - Novedrate(CO)
05/07/2019
11:30
Esame Abilità Informatiche e Telematiche - Cds Design e Discipline della Moda - Lettere - Novedrate(CO)
12/07/2019
11:30
Esame Introduzione all'Archivistica Digitale e all'Informatica per le Scienze Umane - Cds Letteratura, Arte, Musica e Spettacolo - Lettere - Roma
12/07/2019
11:30
Esame Archivistica Digitale e Informatica per le Scienze Umane - Cds Filologia Moderna - Lettere - Roma
12/07/2019
11:30
Esame Abilità Informatiche e Telematiche - Cds Design e Discipline della Moda - Lettere - Roma
Risorse
Guida HTML/CSS per principianti (link)
Introduzione agli ipertesti (link)
Esercizi guidati in Java (link)
Intelligenza artificiale (link)
Libri
Fondamenti di Informatica (2011) (link)
Informatica per le Scienze Umane (2011) (link)
Fondamenti di Informatica (2014) (link)
Pagina Docente
uniecampus.it - Scheda Docente (link)
Contatti
fabio.donatantonio[at]uniecampus.it

JWhisper, sviluppato presso il Dipartimento di Informatica Applicata dell'Università degli Studi di Salerno:

Stay Connected

Twitter

Le mie foto

Foto di Fabio Donatantonio
×