Bonjour,
Je débute avec Jpgraph, je souhaite sortir des stats concernant des log IIS stockée dans une base de donnée.
En abscisse le temps et en ordonnée le nombre d'appel du web service.
ma requête sql :select url, temps, nbappel FROM dbo.IISLog where url= 'URL' order by TEMPS
Avec le code ci-dessous j'affiche bien un graphique courbe avec le nombre d'appel en ordonnée mais j'ai aucune légende en ordonnée.
Je pense qu'il faut récupérer la valeur min(temps) et max(temps) et ensuite utilisé une fonction jpgraph pour afficher en découpant toutes les 10 minutes.
Voilà mon code:
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78 <?php require_once ('../jpgraph.php'); require_once ('../jpgraph_line.php'); require_once ("../jpgraph_date.php"); $serverName = "localhost"; $username = "php"; $password = "****"; $database = "Base"; $sql = <<<EOF select url, temps, nbappel FROM dbo.IISLog where url= 'URL' order by TEMPS EOF; $mssqlQuery = sqlsrv_query( $conn, $sql) or die('Pb de requete'); $mssqlQuery = sqlsrv_query( $conn, $sql) or die('Pb de requete'); $tableauTemps = array(); $tableauAppel = array(); while ( $row = sqlsrv_fetch_array( $mssqlQuery, SQLSRV_FETCH_ASSOC)) { $tableauAppel[] = $row['NbAppel']; //datay $tableauTemps[] = $row['TEMPS']; //datax } $datastart = $tableauTemps[0] $graph = new Graph(1000,950); $graph->SetScale('datlin'); $theme_class=new UniversalTheme; $graph->SetTheme($theme_class); $graph->img->SetAntiAliasing(false); $graph->title->Set('Nb Appel webservice'); $graph->SetBox(true); $graph->img->SetAntiAliasing(); $graph->yaxis->HideZeroLabel(); $graph->yaxis->HideLine(false); $graph->yaxis->HideTicks(false,false); $graph->yaxis->title->Set("NbAppel"); $graph->yaxis->title->SetFont(FF_FONT1,FS_BOLD); $graph->xgrid->Show(); $graph->xgrid->SetLineStyle("solid"); $graph->xgrid->SetColor('#E3E3E3'); $graph->xaxis->title->Set("Temps"); $graph->xaxis->title->SetFont(FF_FONT1,FS_BOLD); $graph->xaxis->SetTickLabels($tableauTemps); // Create the line $courbe = new LinePlot($tableauAppel); //$courbe->SetColor("blue"); $courbe->SetCenter(); $courbe->SetLegend(NBAppel); // Ajouter la courbe au conteneur $graph->Add($courbe); $graph->Stroke(); sqlsrv_close( $conn); ?>
Partager