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

jQuery Discussion :

Affichage d'un graphique jQplot


Sujet :

jQuery

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut Affichage d'un graphique jQplot
    Bonjour,

    Mon problème est le suivant, je n'arrive pas à faire afficher un graphique en camember avec les valeurs ci-jointes :

    [['a',6.9],['b',2.4],['c',0.6],['d',0],['e',2.48],['f',9.41],['g',15.84],['h',11.97],['i',0],['j',3.37],['k',1.13],['l',10.5],['m',2.68],['n',16.22],['o',0.67],['p',0],['q',0.1],['r',1.9],['s',0],['t',3.89],['u',2.59],['v',0],['w',0],['x',1.38],['y',0.52],['z',3.18],['za',2.17]]
    Voici le code utilisé :
    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
    <h3>Evolution trafic Gn SGSN en To</h3>
    <center>
    	<div id="Graph" style="height:450px; width:80%;"></div>
    </center>
    <br></br>
    <h3>Répartition du trafic Gn par SGSN (hebdo)</h3>
    <center>
    	<div id="Camember" style="height:450px; width:80%;"></div>
    </center>
     
    <script type="text/javascript" class="code">
    $(document).ready(function() {
        graph('Graph');
        graph('Camember');
    });
     
    function graph(div) {
    	var traf = <?php echo json_encode($sommeTraf);?>;
    	var abscisseSem = <?php echo json_encode($nbSem);?>;
    	var plot1 = $.jqplot ('Graph', [traf], {
    		axes : {
    			xaxis : {
    				renderer : $.jqplot.CategoryAxisRenderer,
    				ticks : abscisseSem
    			}
    		}
    	});
     
    	var nomeq = <?php echo json_encode($tabEq);?>;
    	var valeach = <?php echo json_encode($pourcent);?>;
    	var tabFin = "";
     
    	for (i = 0 ; i < valeach.length ; i++)
    	{
    		if (i == 0)
    		{
    			tabFin += "['"+nomeq[i]+"',"+valeach[i]+"],";
    		}
    		else if (i == valeach.length - 1)
    		{
    			tabFin += "['"+nomeq[i]+"',"+valeach[i]+"]";
    		}
    		else
    		{
    			tabFin += "['"+nomeq[i]+"',"+valeach[i]+"],";
    		}
    	}
    	alert(tabFin);
    	var plot2 = $.jqplot ('Camember', [[tabFin]],
    	{
    		title: ' ',
    		seriesDefaults: {
    			shadow: false,
    			renderer: jQuery.jqplot.PieRenderer,
    			rendererOptions: {
    				startAngle: 180,
    				sliceMargin: 4,
    				showDataLabels: true }
      		},
      		legend: { show:true, location: 'w' }
        }
      	);
    }
     
    </script>
    </table>
    </body>
    </html>
    L'erreur se situe au niveau du plot2. J'ai farfouiller un peu partout et essayer de virer/rajouter des [] mais rien n'y fait.

    Cependant, par exemple, en traçant une 2eme fois le premier graphique, ils s'affichent très bien tous les deux. Je pense que c'est une erreur de syntaxe cependant étant donné que je commence à peine à manipuler jQplot et le peu d’informations disponibles sur le sujet, je bloque.

    Si vous avez des idées n'hésitez pas !

    Merci d'avance.

    PS : j'ai bien rajouté les renderer nécessaires etc

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut
    Bonsoir

    Je ne peux rien faire avec du code PHP !

    Je ne peux tester que des codes CSS, HTML et JS. Il faut copier-coller le code source de la page affichée dans le navigateur ou donner un lien vers cette page.

    Si vous utilisez des données JSON, il faut impérativement des guillemets anglais doubles ("a" et pas 'a')

  3. #3
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    Voici le bout de code source qui nous intéresse.

    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
     
    <script type="text/javascript" class="code">
    $(document).ready(function() {
        graph('Graph');
        graph('Camember');
    });
     
    function graph(div) {
    	var traf = [1493.58,1496.27,1491.14];
    	var abscisseSem = ["S30","S31","S32"];
    	var plot1 = $.jqplot ('Graph', [traf], {
    		axes : {
    			xaxis : {
    				renderer : $.jqplot.CategoryAxisRenderer,
    				ticks : abscisseSem
    			}
    		},
    		cursor:{
                show: true,
                zoom: true
            }
    	});
     
    	var nomeq = [];
    	var valeach = [];
    	var tabFin = "";
     
    	for (i = 0 ; i < valeach.length ; i++)
    	{
    		if (i == 0)
    		{
    			tabFin += "[[\""+nomeq[i]+"\","+valeach[i]+"],";
    		}
    		else if (i == valeach.length - 1)
    		{
    			tabFin += "[\""+nomeq[i]+"\","+valeach[i]+"]]";
    		}
    		else
    		{
    			tabFin += "[\""+nomeq[i]+"\","+valeach[i]+"],";
    		}
    	}
    	alert(tabFin);
    	var plot2 = $.jqplot ('Camember', [tabFin],
    	{
    		title: ' ',
    		seriesDefaults: {
    			shadow: false,
    			renderer: jQuery.jqplot.PieRenderer,
    			rendererOptions: {
    				startAngle: 180,
    				sliceMargin: 4,
    				showDataLabels: true }
      		},
      		legend: { show:true, location: 'w' },
        	cursor:{
                show: true,
                zoom: true
            }
        }
      	);
    }
     
    </script>
    </table>
    </body>
    </html></div></div></div></div></div></div></div></div></div>
     
    </div>
    </div>
     
    </body>
    </html>

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 132
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 132
    Points : 1 418
    Points
    1 418
    Par défaut
    Bonjour,

    Dans la nouvelle version, tabFin n'aura plus la même structure (enfin si nomeq et valeach ne restent pas vides ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [a,6.9],[b,2.4],[c,0.6]]

  5. #5
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    Dans la nouvelle version justement, l'affichage ressemble à ça non ?

    [["a",6.4],["b",2.4],["c",0.6]]
    ?

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 132
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 132
    Points : 1 418
    Points
    1 418
    Par défaut
    Citation Envoyé par ciols Voir le message
    Dans la nouvelle version justement, l'affichage ressemble à ça non ?

    ?
    Oui quand j'ai écris ma réponse il n'y avait pas les \" mais ce n'est pas grave

    Le problème est que tu ne passes pas ce que tu crois à jqplot avec tabFin ...

    Il attend un tableau de tableau de paires [nom,valeur], pas un tableau de chaîne.

    Attendu :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [[["a",12],["b",45],["c",96]]]
    Actuel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ["[[\"a\",12],[\"b\",45],[\"c\",96]]"]

    Donc soit il te faut transformer tabFin de chaîne JSON en tableau avec jQuery.parseJSON(tabFin) pour le passer à jqplot, soit tu peux créer directement le tableau comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    	var tabFin = [];
     
    	for (i = 0 ; i < valeach.length ; i++)
    	{
    		tabFin.push([nomeq[i],valeach[i]]);
    	}
    devYan.

  7. #7
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut
    Ma-gni-fi-que !! Ca marche !

    Merci beaucoup !!

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 11/07/2014, 11h29
  2. Affichage etiquette-pourcentage graphique
    Par alexbubs dans le forum Access
    Réponses: 1
    Dernier message: 24/10/2005, 09h30
  3. Affichage d'un graphique complet avec scrollbar
    Par MMIC dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 27/01/2005, 16h37
  4. Affichage en mode graphique
    Par Bidouille dans le forum Mandriva / Mageia
    Réponses: 3
    Dernier message: 09/09/2004, 11h50
  5. [QuickReport][Débutant] Affichage d'un graphique
    Par poufouille dans le forum Bases de données
    Réponses: 3
    Dernier message: 23/03/2004, 09h03

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