Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 416 Rev 560
Line 224... Line 224...
224
		// Post traitement des données
224
		// Post traitement des données
225
		$titre = 'Évolution des utilisateurs par mois';
225
		$titre = 'Évolution des utilisateurs par mois';
226
		$valeurs = implode(',', $utilisateurs);
226
		$valeurs = implode(',', $utilisateurs);
227
		$valeurs_max = max($utilisateurs);
227
		$valeurs_max = max($utilisateurs);
228
		$y_val_fin = $valeurs_max;
228
		$y_val_fin = $valeurs_max;
229
		$y_pas = 2;
229
		$y_pas = 5;
230
		$etiquettes_x1 = implode('|', $les_mois);
230
		$etiquettes_x1 = implode('|', $les_mois);
231
		$etiquettes_x2 = implode('|', $annees);
231
		$etiquettes_x2 = implode('|', $annees);
232
		$etiquettes_y = 'utilisateurs';
232
		$etiquettes_y = 'Utilisateurs';
Line 233... Line 233...
233
 
233
 
234
		// Construire de l'url de l'image
234
		// Construire de l'url de l'image
235
		$graph = array('cht' => 'lc',
235
		$graph = array('cht' => 'lc',
236
			'chtt'	=> $titre,
236
			'chtt'	=> $titre,
Line 240... Line 240...
240
			'chds'	=> '0,'.$valeurs_max,
240
			'chds'	=> '0,'.$valeurs_max,
241
			'chxt'	=> 'y,y,x,x',
241
			'chxt'	=> 'y,y,x,x',
242
			'chxl'	=> '1:|'.$etiquettes_y.'|3:|'.$etiquettes_x2.'|2:|'.$etiquettes_x1.'',
242
			'chxl'	=> '1:|'.$etiquettes_y.'|3:|'.$etiquettes_x2.'|2:|'.$etiquettes_x1.'',
243
			'chxp'	=> '1,50|3,0',
243
			'chxp'	=> '1,50|3,0',
244
			'chxr'	=> "0,0,$y_val_fin,$y_pas",
244
			'chxr'	=> "0,0,$y_val_fin,$y_pas",
245
			'chm'	=> 'h,C3C3C3,0,0.5,1,-1|N ** ,000000,0,2::2,8,1.0,ht');
245
			'chm'	=> 'h,C3C3C3,0,0.5,1,-1|N ** ,000000,0,2::2,8,1.0,ht',
-
 
246
			'chxs'	=> '0,0000FF|1,0000FF');
246
		return $graph;
247
		return $graph;
247
	}
248
	}
Line 248... Line 249...
248
 
249
 
249
	private function getEvolObsParMoisGlissant($param) {
250
	private function getEvolObsParMoisGlissant($param) {
Line 258... Line 259...
258
		$annees_mois = array();
259
		$annees_mois = array();
259
		$jours = array();
260
		$jours = array();
260
		foreach ($obs_totale as $annee_mois_jours => $nbre) {
261
		foreach ($obs_totale as $annee_mois_jours => $nbre) {
261
			$annee = substr($annee_mois_jours, 0, 4);
262
			$annee = substr($annee_mois_jours, 0, 4);
262
			$mois = substr($annee_mois_jours, 4, 2);
263
			$mois = substr($annee_mois_jours, 4, 2);
263
			$annee_mois_fmt_B = strftime('%B %Y', strtotime($annee.'-'.($mois+1).'-00'));
-
 
264
			$jour = substr($annee_mois_jours, 6, 2);
264
			$jour = substr($annee_mois_jours, 6, 2);
-
 
265
			$annee_mois_fmt_B = strftime('%B %Y', mktime(0, 0, 0, $mois, 1, $annee));
265
 
266
			
266
			if (!isset($dates[$annee][$mois][$jour])) {
267
			if (!isset($dates[$annee][$mois][$jour])) {
267
				$annees_mois[] = (!isset($dates[$annee][$mois]) ? $annee_mois_fmt_B : '');
268
				$annees_mois[] = (!isset($dates[$annee][$mois]) ? $annee_mois_fmt_B : '');
268
				$jours[] = $jour;
269
				$jours[] = $jour;
269
				// Ajouter au tableau dates tjrs à la fin
270
				// Ajouter au tableau dates tjrs à la fin
270
				$dates[$annee][$mois][$jour] = 1;
271
				$dates[$annee][$mois][$jour] = 1;
271
			}
272
			}
272
		}
273
		}
273
 
274
		
274
		// Post traitement des données
275
		// Post traitement des données
275
		$titre = 'Évolution des observations sur un mois glissant';
276
		$titre = 'Évolution des observations sur un mois glissant';
276
		$valeurs = implode(',', $obs_totale);
-
 
277
		$valeurs_max = max($obs_totale);
277
		$valeurs_max = max($obs_totale);
-
 
278
		$valeurs = implode(',', $obs_totale);
278
		$y_val_fin = $valeurs_max;
279
		$y_val_fin = $valeurs_max;
279
		$y_pas = 25;
280
		$y_pas = round($valeurs_max / 6);
280
		$etiquettes_x1 = implode('|', $jours);
281
		$etiquettes_x1 = implode('|', $jours);
281
		$etiquettes_x2 = implode('|', $annees_mois);
282
		$etiquettes_x2 = implode('|', $annees_mois);
282
		$etiquettes_y1 = 'observations';
283
		$etiquettes_y2 = 'Observations';
Line 283... Line 284...
283
 
284
 
284
		// Construire de l'url de l'image
285
		// Construire de l'url de l'image
285
		$graph = array('cht' => 'lc',
286
		$graph = array('cht' => 'lc',
286
			'chtt'	=>	$titre,
287
			'chtt'	=>	$titre,
287
			'chs'	=>	'600x200',
288
			'chs'	=>	'600x200',
288
			'chco'	=>	'822013',
289
			'chco'	=>	'822013',
289
			'chd'	=>	't:'.$valeurs,
290
			'chd'	=>	't:'.$valeurs,
290
			'chds'	=>	'0,'.$valeurs_max,
291
			'chds'	=>	'0,'.$valeurs_max,
291
			'chxt'	=>	'y,y,x,x',
292
			'chxt'	=>	'y,y,x,x',
292
			'chxl'	=>	'1:|'.$etiquettes_y1.'|3:|'.$etiquettes_x2.'|2:|'.$etiquettes_x1,
293
			'chxl'	=>	'1:|'.$etiquettes_y2.'|2:|'.$etiquettes_x1.'|3:|'.$etiquettes_x2,
293
			'chxp'	=>	'0,0|1,50',
294
			'chxp'	=>	'0,0|1,50',
294
			'chxr'	=>	"0,0,$y_val_fin,$y_pas",
295
			'chxr'	=>	"0,0,$y_val_fin,$y_pas",
-
 
296
			'chm'	=> 'h,C3C3C3,0,0.5,1,-1|N,000000,0,1::1,8,1.0,ht',
295
			'chm'	=> 'h,C3C3C3,0,0.5,1,-1|N,000000,0,1::1,8,1.0,ht');
297
			'chxs'	=> '0,822013|1,822013');
296
		return $graph;
298
		return $graph;
Line 297... Line 299...
297
	}
299
	}
298
 
300
 
Line 302... Line 304...
302
 
304
 
303
		// Trie des dates pour les étiquettes des axes
305
		// Trie des dates pour les étiquettes des axes
304
		$dates = array();
306
		$dates = array();
305
		$annees = array();
307
		$annees = array();
306
		$les_mois = array();
308
		$les_mois = array();
307
		$pas = 2; // intervalle de mois entre deux étiquettes
309
		$pas = 3; // intervalle de mois entre deux étiquettes
308
		$periode = 0;
310
		$periode = 0;
309
		$cumul = 0;
311
		$cumul = 0;
310
		$obs_totale_cumul = array();
312
		$obs_totale_cumul = array();
311
		foreach ($obs_totale as $annee_mois => $nbre) {
313
		foreach ($obs_totale as $annee_mois => $nbre) {
Line 328... Line 330...
328
		$valeurs_y = implode(',', $obs_totale);
330
		$valeurs_y = implode(',', $obs_totale);
329
		$valeurs_r = implode(',', $obs_totale_cumul);
331
		$valeurs_r = implode(',', $obs_totale_cumul);
330
		$valeurs_max_y = max($obs_totale);
332
		$valeurs_max_y = max($obs_totale);
331
		$valeurs_max_r = max($obs_totale_cumul);
333
		$valeurs_max_r = max($obs_totale_cumul);
332
		$y_val_fin = $valeurs_max_y;
334
		$y_val_fin = $valeurs_max_y;
333
		$y_pas = 500;
335
		$y_pas = round(($valeurs_max_y / 6), 0);
334
		$r_val_fin = $valeurs_max_r;
336
		$r_val_fin = $valeurs_max_r;
335
		$r_pas = 2500;
337
		$r_pas = round(($valeurs_max_r / 6), 0);
336
		$etiquettes_x1 = implode('|', $les_mois);
338
		$etiquettes_x1 = implode('|', $les_mois);
337
		$etiquettes_x2 = implode('|', $annees);
339
		$etiquettes_x2 = implode('|', $annees);
338
		$etiquettes_y = 'Observations';
340
		$etiquettes_y2 = 'Observations';
-
 
341
		$etiquettes_r2 = 'Cumul obs.';
Line 339... Line 342...
339
 
342
 
340
		// Construire de l'url de l'image
343
		// Construire de l'url de l'image
341
		$graph = array('cht' => 'lc',
344
		$graph = array('cht' => 'lc',
342
			'chtt'	=> $titre,
345
			'chtt'	=> $titre,
343
			'chs'	=> '600x200',
346
			'chs'	=> '600x200',
344
			'chco'	=> '822013,F1841D',
347
			'chco'	=> '822013,F1841D',
345
			'chd'	=> 't:'.$valeurs_y.'|'.$valeurs_r,
348
			'chd'	=> 't:'.$valeurs_y.'|'.$valeurs_r,
346
			'chds'	=> "0,$valeurs_max_y,0,$valeurs_max_r",
349
			'chds'	=> "0,$valeurs_max_y,0,$valeurs_max_r",
347
			'chxt'	=> 'y,y,x,x,r',
350
			'chxt'	=> 'y,y,x,x,r,r',
348
			'chxl'	=> '1:|'.$etiquettes_y.'|3:|'.$etiquettes_x2.'|2:|'.$etiquettes_x1.'',
351
			'chxl'	=> '1:|'.$etiquettes_y2.'|2:|'.$etiquettes_x1.'|3:|'.$etiquettes_x2.'|5:|'.$etiquettes_r2.'',
349
			'chxp'	=> '1,50|3,0',
352
			'chxp'	=> '1,50|3,0|5,50',
350
			'chxr'	=> "0,0,$y_val_fin,$y_pas|4,0,$r_val_fin,$r_pas",
353
			'chxr'	=> "0,0,$y_val_fin,$y_pas|4,0,$r_val_fin,$r_pas",
351
			'chm'	=> 'N ** ,000000,0,2::2,8,1.0,ht',
354
			'chm'	=> 'N ** ,000000,0,2::2,8,1.0,ht',
352
			'chxs'	=> '0,822013|4,F1841D');
355
			'chxs'	=> '0,822013|1,822013|4,F1841D|5,F1841D');
353
		return $graph;
356
		return $graph;
Line 354... Line 357...
354
	}
357
	}
355
 
358
 
Line 372... Line 375...
372
		$valeurs = implode(',', $obs_totale);
375
		$valeurs = implode(',', $obs_totale);
373
		$valeurs_max = max($obs_totale);
376
		$valeurs_max = max($obs_totale);
374
		$valeurs_min = min($obs_totale);
377
		$valeurs_min = min($obs_totale);
375
		$y_val_deb = preg_replace('/[0-9]{2}$/', '00', $valeurs_min);
378
		$y_val_deb = preg_replace('/[0-9]{2}$/', '00', $valeurs_min);
376
		$y_val_fin = $valeurs_max;
379
		$y_val_fin = $valeurs_max;
377
		$y_pas = 1000;
380
		$y_pas = round(($valeurs_max / 6), 0);
378
		$etiquettes_x = implode('|', $annees);;
381
		$etiquettes_x = implode('|', $annees);;
379
		$etiquettes_y = 'observations';
382
		$etiquettes_y = 'Observations';
Line 380... Line 383...
380
 
383
 
381
		// Construire de l'url de l'image
384
		// Construire de l'url de l'image
382
		$graph = array('cht' => 'lc',
385
		$graph = array('cht' => 'lc',
383
			'chtt'	=> $titre,
386
			'chtt'	=> $titre,
Line 387... Line 390...
387
			'chds'	=> "$valeurs_min,$valeurs_max",
390
			'chds'	=> "$valeurs_min,$valeurs_max",
388
			'chxt'	=> 'y,y,x',
391
			'chxt'	=> 'y,y,x',
389
			'chxl'	=> '1:|'.$etiquettes_y.'|2:|'.$etiquettes_x.'',
392
			'chxl'	=> '1:|'.$etiquettes_y.'|2:|'.$etiquettes_x.'',
390
			'chxp'	=> '0,0|1,50|2,0',
393
			'chxp'	=> '0,0|1,50|2,0',
391
			'chxr'	=> "0,$y_val_deb,$y_val_fin,$y_pas",
394
			'chxr'	=> "0,$y_val_deb,$y_val_fin,$y_pas",
392
			'chm'	=> 'h,C3C3C3,0,0.5,1,-1|N,000000,0,1::1,8,1.0,ht');
395
			'chm'	=> 'h,C3C3C3,0,0.5,1,-1|N,000000,0,1::1,8,1.0,ht',
-
 
396
			'chxs'	=> '0,822013|1,822013');
393
		return $graph;
397
		return $graph;
394
	}
398
	}
Line 395... Line 399...
395
 
399
 
396
	private function getEvolObsHisto($param) {
400
	private function getEvolObsHisto($param) {