IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[JpGraph] Graphique qui ne s'affiche plus après avoir modifié l'exemple


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    288
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 288
    Points : 123
    Points
    123
    Par défaut [JpGraph] Graphique qui ne s'affiche plus après avoir modifié l'exemple
    Bonjour, j'ai un problème avec Jpgraph, je suis partie d'un exemple fournit, et j'ai voulu remplacer les valeurs avec les miennes, dès que je le fais, le graphique ne s'affiche plus.
    J'ai aussi essayé en rajoutant simplement 1 ou 2 valeurs dans l'exemple, et pareil, celui-ci ne marche plus dès que je le fais.

    Voila le 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
    79
    80
    81
    82
    83
    84
     
     
    require_once "../mysql.php";
     
    	include ("../_class_graph/jpgraph.php");
    	include ("../_class_graph/jpgraph_line.php");
     
    	$date_month = date('my', mktime(0,0,0,date('m'),date('d'),date('y')));
     
    	$sql = sprintf("SELECT distinct(date) FROM stat_article");
    	$result = $dbh->query($sql);
    	$i=0;
     
    	$tab_attclient = array();
    	$tab_attfourn = array();
    	$tab_encours = array();
    	$tab_vide = array();
    	$tab_pbresil = array();
    	$tab_rejete = array();
     
    	foreach($result as $row){
    		$day = substr($row['date'],0,2);
    		$tab[$i] = $day;
    		$date = $day.$date_month;
    		$sql_sum = sprintf("SELECT 
    							SUM(att_client) as attclient,
    							SUM(att_fourn) as attfourn,
    							SUM(en_cours) as encours,
    							SUM(vide) as vide,
    							SUM(pb_resil) as pbresil,
    							SUM(rejete) as rejete
    							FROM stat_article WHERE date = '$date'");
    		$result_sum = $dbh->query($sql_sum);
    		foreach($result_sum as $row_sum){
    			$tab_attclient[$i] = $row_sum['attclient'];
    			$tab_attfourn[$i] = $row_sum['attfourn'];	
    			$tab_encours[$i] = $row_sum['encours'];	
    			$tab_vide[$i] = $row_sum['vide'];	
    			$tab_pbresil[$i] = $row_sum['pbresil'];	
    			$tab_rejete[$i] = $row_sum['rejete'];		
    		}
    		$i++;
    	}
     
    	$count_tab = count($tab);
     
    	$datay1 =         array(11,7,5,8,3,5,5,4,8,6,5,5,3,2,5,1,2,0);
    	$datay2 =     array( 4,5,4,5,6,5,7,4,7,4,4,3,2,4,1,2,2,1);
    	$datay3 =         array(4,5,7,10,13,15,15,22,89,26,30,34,40,43,47,55,60,62);
     
     
     
    	// Create the graph. These two calls are always required
    	$graph = new Graph(300,200,"auto");    
    	$graph->SetScale("textlin");
    	$graph->SetShadow();
    	$graph->img->SetMargin(40,30,20,40);
     
    	// Create the linear plots for each category
    	$dplot[] = new LinePLot($datay1);
    	$dplot[] = new LinePLot($datay2);
    	$dplot[] = new LinePLot($datay3);
     
    	$dplot[0]->SetFillColor("red");
    	$dplot[1]->SetFillColor("blue");
    	$dplot[2]->SetFillColor("green");
     
    	// Create the accumulated graph
    	$accplot = new AccLinePlot($dplot);
     
    	// Add the plot to the graph
    	$graph->Add($accplot);
     
    	$graph->xaxis->SetTextTickInterval(2);
    	$graph->title->Set("grpah");
    	$graph->xaxis->title->Set("X-title");
    	$graph->yaxis->title->Set("Y-title");
     
    	$graph->title->SetFont(FF_FONT1,FS_BOLD);
    	$graph->yaxis->title->SetFont(FF_FONT1,FS_BOLD);
    	$graph->xaxis->title->SetFont(FF_FONT1,FS_BOLD);
     
    	// Display the graph
    	$graph->Stroke();
    En fait dès que je remplace $ydata1 par $tab_attclient par exemple, la graph ne marche plus.
    MacBook Pro 15"
    "La pensée nous permet de rêver, le rêve de vivre".
    My WebSite

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Points : 459
    Points
    459
    Par défaut
    Peux-tu regarder le contenu de ta table $tab_attclient? Pour rien, rien de choquant dans ton code! A part, peut-être que tu ne testes pas si ta requête échoue pour obtenir tes sommes alors tes graphiques vont avoir un point NULL!!! Le FOR EACH après une requête de sommes n'est pas logique vu que tu ne devrais obtenir que 0 ou 1 résultat

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    288
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 288
    Points : 123
    Points
    123
    Par défaut
    en faisant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    print_r($tab_attclient)
    cela affiche :

    Donc il y a bien des valeurs je comprends po...
    MacBook Pro 15"
    "La pensée nous permet de rêver, le rêve de vivre".
    My WebSite

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Points : 459
    Points
    459
    Par défaut
    Si tu n'as qu'un seul point, c'est normal que jpgraph te mette un message d'erreur!! Avec 2 points, cela risque de mieux fonctionner

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    288
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 288
    Points : 123
    Points
    123
    Par défaut
    Ouaip c'est ça le problème, mais c'est pas très malin, si au départ nous n'avons qu'une valeur dans le tablea...enfin bref, je passe le problème en résolu.
    Merci de ton aide.
    MacBook Pro 15"
    "La pensée nous permet de rêver, le rêve de vivre".
    My WebSite

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Points : 459
    Points
    459
    Par défaut
    tu n'as qu'à commencer ta boucle à $i=1 et initialiser la première valeur de chaque tableau à 0!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 14
    Dernier message: 14/01/2018, 19h55
  2. Réponses: 9
    Dernier message: 29/01/2007, 10h40
  3. Static transparent qui ne l'est plus après un alt-tab
    Par prgasp77 dans le forum Windows
    Réponses: 3
    Dernier message: 20/12/2006, 01h00
  4. Réponses: 1
    Dernier message: 23/01/2006, 13h56
  5. Réponses: 2
    Dernier message: 02/06/2005, 11h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo