Problema con phpgraphlib

Francesco_s

Nuovo Utente
12 Mar 2018
3
1
3
32
Ciao a tutti! ho un problema nella visualizzazione dei grafici con la libreria phpgraphlib. Premetto che la sto iniziando ad usare da pochi giorni... sto creando un applicazione web based dove devo estrarre dei dati dal mio DB e mostrarli su una pagina in worpress. Utilizzo XAMPP. Il problema si manifesta già se utilizzo gli esempi nella cartella di phpgrahlib. Se eseguo il file example1.php visualizzo il grafico.
PHP:
<?php
include('../phpgraphlib.php');
$graph = new PHPGraphLib(500, 350);
$data = array(12124, 5535, 43373, 22223, 90432, 23332, 15544, 24523, 32778,
    38878, 28787, 33243, 34832, 32302);
$graph->addData($data);
$graph->setTitle('Widgets Produced');
$graph->setGradient('red', 'maroon');
$graph->createGraph();
upload_2018-3-26_17-21-12.png


Ma se, ad esempio, utilizzo il codice del file example2.php
PHP:
<?php
include('../phpgraphlib.php');
$graph = new PHPGraphLib(500, 450);
$data = array("Jan" => -1324, "Feb" => -1200, "Mar" => -100, "Apr" => -1925,
    "May" => -1444, "Jun" => -957, "Jul" => -364, "Aug" => -221,
    "Sep" => -1300, "Oct" => -848, "Nov" => -719, "Dec" => -114);
$graph->addData($data);
$graph->setBarColor('255,255,204');
$graph->setTitle('Money Made at XYZ Corp');
$graph->setTextColor('gray');
$graph->createGraph();
ciò che visualizzo è questo:
upload_2018-3-26_16-57-57.png

anche utilizzando il codice che devo utilizzare io, visualizzo la stessa pagina nera.
PHP:
<?php
//includo la libreria phpgrahlib
include('phpgraphlib.php');
$servername = "localhost";
$dbname = "db_test2";          //nome DB
$username = "root";
$password = "";
try {
  //creo oggetto PDO di connessione al DBMS
  $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
  // impostazione dell'attributo per il report degli errori
  $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  $graph = new PHPGraphLib(500, 350);
  //creo array da dare all'oggetto graph
  $dataArray=array();
  //get data from database
  $sql1="SELECT ipodiag,COUNT(*) AS 'count' FROM archivio_visita GROUP BY ipodiag ";
  foreach ($conn->query($sql1) as $key1) {
    $ipodiag=$key1['ipodiag'];
    $count=$key1['count'];
    $dataArray[$ipodiag]=$count;
  }//end foreach
  //configure graph
  $graph->addData($dataArray);
  $graph->setTitle("Statistiche diagnosi");
  $graph->setGradient("lime", "green");
  $graph->setBarOutlineColor("black");
  $graph->createGraph();

} catch (\Exception $e) {
  // notifica in caso di errore nel tentativo di connessione
  echo $e->getMessage();
}
$conn = null;

 ?>

se invece imposto che il grafico deve essere salvato come un file .png è tutto ok. Come mai? (P.S. il mio scopo è che ogni volta che venga aperta la pagina html mi produca un grafico in base ai dati nel DB che possono variare continuamente). Grazie anticipatamente
 
Grazie per la riposta ma purtroppo non ho risolto. Ho preferito a questo punto cambiare. Ora sto utilizzando ChartJS
 

Discussioni simili