Ciao,
ho questo problema con il grafico creato con jpgraph, sembra che il vettore ottenuto con il fetch array quando deve essere usato per il plot sia vuoto e mi restituisce l'errore che non può fare il plot di vettori vuoti.
Posto il codice spiegando cosa fa:
[PHP]
<?php
include_once("../include/config.php");
include ( "../jpgraph/src/jpgraph.php");
include ("../jpgraph/src/jpgraph_line.php");
// Query per selezionare i dati
$query_mostra="SELECT $variabile FROM dati_sodar_windprofile WHERE data='$year-$month-$day' AND ora='$orario' order by data, ora;";
$result_mostra=mysql_query($query_mostra) or die ("impossibile eseguire: $query_mostra");
// Query per selezionare i parametri
$query_parametri="SELECT * FROM tabelle_campi WHERE nome_campo='$variabile' AND id_tabella = '4' ;";
$result_parametri=mysql_query($query_parametri) or die ("impossibile eseguire: $query_parametri");
$row_parametri=mysql_fetch_array($result_parametri );
// Query per ricavare l'altitude
$query_alt="SELECT altitude FROM dati_sodar_windprofile WHERE data='$year-$month-$day' AND ora='$orario' order by data, ora;";
$result_alt=mysql_query($query_alt) or die ("impossibile eseguire: $query_mostra");
// Stampa le componenti dell'altitudine e della $variabile
while($row_mostra_alt=mysql_fetch_array($result_al t)){
echo "componente altitudine: {$row_mostra_alt['altitude']}
";
}
while($row_mostra=mysql_fetch_array($result_mostra )){
echo "componente di $variabile: {$row_mostra['vertical_sn']}
";
}
// Fine stampa
[/PHP}
fin qui quando stampo i dati che ci sono nel database e me li stampa corretti, e ci siamo.
Codice PHP:
// Genero il grafico X,Y
$titolo=$row_parametri[descrizione_IT];
if ($Lingua == "EN") $titolo=$row_parametri[descrizione_EN];
$label_asse_y= $titolo." (".$row_parametri[unita_misura].")";
$label_asse_y= togliaccenti($label_asse_y);
$titolo= togliaccenti($titolo);
// Create the graph. These twovertical_sn calls are always required
$graph = new Graph(250, 500,"auto");
$graph->title->Set ($titolo);
$graph->SetScale('intlin',0,300,0,100); // A PUNTI
// setta i margini
$graph->SetMargin(60,40,40,40);
$graph->xaxis-> SetTickLabels($vettore_label);
$graph->xaxis-> title->Set("$label_asse_y" );
// distanzia la label verticale dall'asse
$graph->yaxis-> SetTitlemargin(40);
$graph->yaxis-> title->Set("Altitude (m)");
$sp1=new LinePlot(`$row_mostra_alt`, `$row_mostra`);
//$sp1=new LinePlot(`$row_mostra_alt[altitude]`, `$row_mostra`);
$graph->Add($sp1); // A PUNTI
// Display the graph
$graph->Stroke();
?>
ci sono cose superflue che servono nella pagina che non sto a descrivere ma vorrei capire se così dovrei ottenere un grafico o meno.
grazie.
ciao.