Bonjour tous le monde. je souhaite dessiner des histogrammes illustrant les taux de communications téléphoniques établies par chaque extensions dans un réseau local d'entreprise moyennant artichow. je veux donc que les extensions soient affichées sur l'axe X et les pourcentage sur l'axe Y. j'ai donc créé un tableau associatif dont les index sont les extensions et les valeurs sont les pourcentages. Voici le code que j'ai écrit:
Code :
- <?php
- header("Content-type: image/png" );
- require_once"C:/Documents and settings/user/Mes documents/Téléchargements/Artichow-php5/BarPlot.class.php";
- //-------debut traitement-------------
- mysql_connect("localhost","root","admin" );
- mysql_select_db("oreka" );
- $axeX=array();
- $compteur=1;
- $premier=1;
- $reponse=mysql_query("SELECT duration, localParty FROM rectape WHERE localParty LIKE\"1%\"" );
- while($t=mysql_fetch_array($reponse))
- {$local=$t['localParty'];
- //--------initialisation table des extensions-------------------
- if($premier==1)
- {
- $axeX[0]=$t['localParty'];
- $premier=0;
- }
- //------------vérification existence-------------------
- $exist=false;
- for($j=0 ; $j<$compteur-1; $j++)
- {
- if($axeX[$j]==$local)
- {
- $exist=true;
- }
- }
- //------enregistrement de la nouvelle valeur-----------
- if($exist==false)
- {$axeX[$compteur-1]=$t['localParty'];
- $compteur++;
- $axeX[$compteur]=0;
- }
- }
- //------------fin recherche nlle valeurs------------------
- //------------tableau associatif----------------
- //------------initialisation durée-------------
- $final=array();
- for($i=0;$i<$compteur-1;$i++)
- {
- $ext=$axeX[$i];
- $duree[$ext]=0;
- }
- //--------fin initialisation tableau---------------
- $pourcentage=array();
- $axeY=array();
- $totalduration=0;
- $i=0;
- $reponse=mysql_query("SELECT duration, localParty FROM rectape WHERE localParty LIKE\"1%\"" );
- echo "<table>";
- while ($t=mysql_fetch_array($reponse))
- {$x=$t['localParty'];
- $duree[$x]=$duree[$x]+$t['duration'];
- $totalduration=$totalduration+$t['duration'];
- $pourcentage[$x]=$duree[$x]*100/$totalduration;
- $axeY[$i]=$pourcentage[$x];
- }
- //-------fin traitement---------------
- //----------histo----------------------
- $graph = new Graph(400, 400);
- $plot = new BarPlot($axeY);
- $plot->xAxis->setLabelText($axeX);
- $plot->xAxis->label->setFont(new TuffyBold(7));
- $graph->setAntiAliasing(TRUE);
- $graph->title->set('Statistques Durées');
- $graph->border->setStyle(Line::DASHED);
- $graph->border->setColor(new DarkGray);
- $plot->setSpace(4, 4, 10, 0);
- $plot->setSize(1, 0.96);
- $plot->setCenter(0.5, 0.52);
- $plot->setBarColor(
- new VeryLightPurple(25)
- );
- $graph->add($plot);
- $graph->draw();
- //-------------------------
- ?>
|
j'ai inséré cette page comme étant une image dans une autre page PHP. mais ça ne m'a donné rien. ça m'affiche le fameux "chart".
pouvez vous m'aidez à corriger ceci. je vous remercie d'avance.
Message édité par sansouna-24 le 12-01-2010 à 00:39:38