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 & Frameworks Discussion :

ajout d'une légende à un DataChart [Dojo]


Sujet :

Bibliothèques & Frameworks

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 29
    Points : 16
    Points
    16
    Par défaut ajout d'une légende à un DataChart
    Bonjour,

    J'essaye sans succès pour le moment d'ajouter une légende à un DataChart.
    Je voudrais faire qqchose comme ceci: http://www.sitepen.com/blog/2009/03/...jox-datachart/ paragraphe Chart Legends.

    Mon code est le suivant
    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
     
    var chart1 = new dojox.charting.DataChart("container", {
    	                comparative:true
    	        });
    chart1.addAxis("x", {
    			min: data[0].min,
    			max: data[0].max,
    			majorTick: {
    				stroke: "black",
    				length: 10
    			},
    			minorTick: {
    				stroke: "gray",
    				length: 5
    			}
    		});
    chart1..addAxis("y", {
    			vertical: true,
    			min: data[0].min,
    			max: data[0].max, 
    			majorTick: {
    				stroke: "black",
    				length: 10
    			},
    			minorTick: {
    				stroke: "gray",
    				length: 5
    			}
    		});
     
    dojo.xhrGet({
    		url: "GetTimeSubtool.php",
    		handleAs: "json",
    		content:{
    			subtoolId: id1
    		},		
    		load: function(data){		
    			chart1.addSeries("Serie1", data).render();
    		}
    	});
     
    dojo.xhrGet({
    		url: "GetTimeSubtool.php",
    		handleAs: "json",
    		content:{
    			subtoolId: id2
    		},		
    		load: function(data){		
    			chart1.addSeries("Serie 2",data).render();
    		}
    	});
     
    var legend = new dojox.charting.widget.Legend({chart: chart1, horizontal: true}, "legend");
    J'ai aussi essayé de créer la légende en utilisant le code donné sur le site "sitepen" mais sans plus de succés

    Et le code HTML:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
      <body>
    	<div id="container" style="width:600px;height:500px;"></div>
    	<div id="legend"></div>
      </body>
    Le chart s'affiche correctement mais la légende n'apparait pas du tout

    J'ai essayé avec la version 1.3.0 et 1.4.0 de Dojo.

    Merci pour votre aide

    Hélène

  2. #2
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Salut Hélène,

    Je crois que ton problème vient du fait que les données n'ont pas fini d'être chargées quand tu crées la légende.
    Essaie plutôt quelque chose comme:

    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
     
    var chart1 = new dojox.charting.DataChart("container", {
    	                comparative:true
    	        });
    chart1.addAxis("x", {
    			min: data[0].min,
    			max: data[0].max,
    			majorTick: {
    				stroke: "black",
    				length: 10
    			},
    			minorTick: {
    				stroke: "gray",
    				length: 5
    			}
    		});
    chart1..addAxis("y", {
    			vertical: true,
    			min: data[0].min,
    			max: data[0].max, 
    			majorTick: {
    				stroke: "black",
    				length: 10
    			},
    			minorTick: {
    				stroke: "gray",
    				length: 5
    			}
    		});
     
     
    var legend ; 
    dojo.xhrGet({
    		url: "GetTimeSubtool.php",
    		handleAs: "json",
    		content:{
    			subtoolId: id1
    		},		
    		load: function(data){		
    			chart1.addSeries("Serie1", data).render();
     
          dojo.xhrGet({
          		url: "GetTimeSubtool.php",
          		handleAs: "json",
          		content:{
          			subtoolId: id2
          		},		
          		load: function(data){		
          			chart1.addSeries("Serie 2",data).render();
                legend = new dojox.charting.widget.Legend({chart: chart1, horizontal: true}, "legend");
          		}
          	});
    		}
    	});
    ERE

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 29
    Points : 16
    Points
    16
    Par défaut
    Merci ca marche.

    Hélène

  4. #4
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Re,

    J'ai modifié vite fait ton code, donc il y a certainement plus élégant...
    Regarde peut-être d'un peu plus prêt.

    ERE

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

Discussions similaires

  1. [Débutant] Ajout d'une légende interactive sur un graphe
    Par Renaud33140 dans le forum MATLAB
    Réponses: 6
    Dernier message: 30/06/2016, 18h34
  2. Réponses: 0
    Dernier message: 29/07/2015, 19h21
  3. [ZF 1.10] Impossible d'ajouter une légende à un fieldset dans un sous formulaire
    Par psylo66 dans le forum Zend_Form
    Réponses: 1
    Dernier message: 23/09/2010, 19h14
  4. [legend] Ajouter une entrée à une légende
    Par jijiz dans le forum MATLAB
    Réponses: 11
    Dernier message: 13/08/2008, 16h10
  5. Réponses: 8
    Dernier message: 14/06/2007, 15h06

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