Bonjour,
J'ai un problème avec la génération de mes graphiques à partir d'une base de données. Mes données contiennent des dates et valeurs qui sont rattaché à une mesure qui sont rattaché à un indicateur.
L'indicateur possède 1 ou plusieurs mesures qui possède 1 ou plusieurs données.
Exemple de données dans la base :
Mesures :
Mesure 1
Mesure 2
Données rattachée à Mesure 1 :
01.07.2011 100
02.07.2011 200
03.07.2011 300
04.07.2011 400
Données rattachée à Mesure 2 :
03.07.2011 150
04.07.2011 300
05.07.2011 400
06.07.2011 600
Je voudrais avec ces données généré un graphique dynamiquement :
Le code ci-dessous fonctionne pas mal :
Le problème c'est que les dates correspondent pas, y aurait il un expert JPGRAPH dans le forum ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 <?php require_once ('jpgraph/jpgraph.php'); require_once ('jpgraph/jpgraph_line.php'); $data = $connexion->query("SELECT v.date, v.valeur, m.nom as mesure FROM indicateur_mesure im JOIN mesure m ON im.idMesure = m.idMesure JOIN valeur v ON m.idMesure = v.idMesure WHERE idIndicateur = $id ORDER BY date")->fetchAll(); foreach ($data as $value) { $xy[$value['mesure']][$value['date']] = $value['valeur']; $y[] = $value['date']; } $graph = new Graph(800,600); $graph->SetScale("textlin"); $graph->yaxis->HideTicks(false,false); $graph->xgrid->Show(); $graph->xgrid->SetLineStyle("solid"); $graph->xaxis->SetTickLabels($y); $graph->xgrid->SetColor('#E3E3E3'); foreach ($xy as $key => $value) { $lplot = new LinePlot(array_values($xy[$key])); if(!$preview) $lplot->SetLegend($key); $graph->Add($lplot); } $graph->stroke(); ?>







Répondre avec citation



Partager