Subversion Repositories Applications.annuaire

Rev

Rev 437 | Rev 440 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 437 Rev 439
Line 13... Line 13...
13
 
13
 
Line 14... Line 14...
14
class Statistiques {
14
class Statistiques {
15
 
15
 
-
 
16
	const GRAPH_CAMEMBERT = 'pie';
-
 
17
	const GRAPH_COURBE = 'courbe';
-
 
18
	private $chemin_lib_graph = '';
-
 
19
	
-
 
20
	public function __construct() {
-
 
21
		
Line 16... Line 22...
16
	const GRAPH_CAMEMBERT = 'pie';
22
		$this->chemin_lib_graph = Config::get('chemin_jpgraph');
-
 
23
	}
17
	const GRAPH_COURBE = 'courbe';
24
 
18
 
-
 
19
	public function genererGraphique($type_graphique, $valeurs, $titre = '', $taille = array(800, 800), $nom_axe_x = '', $nom_axe_y = '') {
-
 
20
 
25
		public function genererGraphique($type_graphique, $valeurs, $titre = '', $taille = array(800, 800), $nom_axe_x = '', $nom_axe_y = '') {
21
		// Inclusion de la librairie JpGraph
-
 
22
		include_once("lib/jpgraph.php");
26
		include_once $this->chemin_lib_graph.'jpgraph.php';
23
		$graph = null;
27
		
24
 
28
		$graph = null;
25
		switch($type_graphique) {
29
		switch($type_graphique) {
26
			case Statistiques::GRAPH_CAMEMBERT:
-
 
27
				$graph = $this->genererGraphiqueCamembert($valeurs, $titre, $taille);
30
			case Statistiques::GRAPH_CAMEMBERT:
28
			break;
31
				$graph = $this->genererGraphiqueCamembert($valeurs, $titre, $taille);
29
 
32
				break;
30
			case Statistiques::GRAPH_COURBE:
-
 
31
				$graph = $this->genererGraphiqueCourbe($valeurs, $titre, $taille, $nom_axe_x, $nom_axe_y);
33
			case Statistiques::GRAPH_COURBE:
32
			break;
34
				$graph = $this->genererGraphiqueCourbe($valeurs, $titre, $taille, $nom_axe_x, $nom_axe_y);
33
 
-
 
34
			default:
35
				break;
Line 35... Line 36...
35
				$graph = $this->genererGraphiqueCourbe($valeurs);
36
			default:
36
			break;
37
				$graph = $this->genererGraphiqueCourbe($valeurs);
Line 37... Line 38...
37
		}
38
		}
38
 
-
 
39
		return $graph;
39
 
40
	}
-
 
41
 
-
 
42
	public function genererGraphiqueCamembert($valeurs, $titre, $taille) {
40
		return $graph;
43
 
-
 
44
		include_once("lib/jpgraph_pie.php");
41
	}
45
		$graph = new PieGraph($taille[0],$taille[1]);
42
 
46
		
43
	public function genererGraphiqueCamembert($valeurs, $titre, $taille) {
47
		$legendes = array_keys($valeurs);
44
		include_once $this->chemin_lib_graph.'jpgraph_pie.php';
48
	
-
 
49
		$valeurs = array_values($valeurs);
-
 
50
 
-
 
51
		$oPie = new PiePlot($valeurs);
-
 
52
		$oPie->SetLegends($legendes);
45
		$legendes = array_keys($valeurs);
53
 
46
		$valeurs = array_values($valeurs);
54
		// Ajouter le titre du graphique
-
 
55
		$graph->title->Set($titre);
47
		
56
 
-
 
57
		// position du graphique (légèrement à droite)
48
		$oPie = new PiePlot($valeurs);
58
		$oPie->SetCenter(0.35);
49
		$oPie->SetLegends($legendes);
Line -... Line 50...
-
 
50
		// position du graphique (légèrement à droite)
-
 
51
		$oPie->SetCenter(0.35);
-
 
52
		$oPie->SetValueType(PIE_VALUE_PER);
59
 
53
		// Format des valeurs de type "entier"
60
		$oPie->SetValueType(PIE_VALUE_PER);
54
		$oPie->value->SetFormat('%1.2f%%');
61
 
55
 
Line 62... Line 56...
62
		// Format des valeurs de type "entier"
56
		$graph = new PieGraph($taille[0],$taille[1]);
63
		$oPie->value->SetFormat('%1.2f%%');
-
 
64
 
57
		// Ajouter le titre du graphique
65
		$graph->Add($oPie);
58
		$graph->title->Set($titre);
66
		return $graph;
59
		$graph->Add($oPie);
67
	}
60
		return $graph;
Line 68... Line 61...
68
 
61
	}
Line 128... Line 121...
128
 
121
 
129
		return $graph;
122
		return $graph;
Line 130... Line 123...
130
	}
123
	}
-
 
124
 
Line 131... Line -...
131
 
-
 
132
	public function combinerGraphiques($graph1, $graph2, $taille) {
125
	public function combinerGraphiques($graph1, $graph2, $taille) {
133
 
126
		include_once $this->chemin_lib_graph.'jpgraph_mgraph.php';
134
		include_once('lib/jpgraph_mgraph.php');
127
 
Line 135... Line 128...
135
		$mgraph = new MGraph($taille[0],$taille[1],"auto");
128
		$mgraph = new MGraph($taille[0],$taille[1],"auto");
Line 148... Line 141...
148
	}
141
	}
Line 149... Line 142...
149
	
142
	
150
	public function dessinerGraph($graph) {
143
	public function dessinerGraph($graph) {
151
		return $graph->Stroke(_IMG_HANDLER);
144
		return $graph->Stroke(_IMG_HANDLER);
152
	}
-
 
153
 
145
	}
154
}
146
}
155
?>
147
?>