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

APIs Google Discussion :

Générer un google chart via json


Sujet :

APIs Google

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2010
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 98
    Par défaut Générer un google chart via json
    Bonjour,
    Je voudrais réaliser un line graph à partir des données de ma table mysql mais ça ne marche pas pour une raison inconnu,j'ai suivi tout les tutos que j'ai trouvé sur le net :
    Pour mon script get_json.php voici le resultat (qui est correcte) :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    {"cols":[{"label":"Date","type":"string"},{"label":"Subscribers","type":"number"}],"rows":[{"c":[{"v":"2013-04-14"},{"v":1}]},{"c":[{"v":"2013-04-15"},{"v":1}]}]}
    Et là l'affichage :
    Code html : 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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
        <title>
          Google Visualization API Sample
        </title>
        <script type="text/javascript" src="http://www.google.com/jsapi"></script>
        <script type="text/javascript">
          google.load('visualization', '1', {packages: ['corechart']});
        </script>
        <script type="text/javascript">
          function drawVisualization() {
            var jsonData = null;
     
            var json = $.ajax({
              url: "get_json.php", // make this url point to the data file
              dataType: 'json',
              async: false,
              success: (
            function(data) {
                jsonData = data;
            })
            }).responseText;
            
         
            
            // Create and populate the data table.
            var data = google.visualization.DataTable(jsonData);
              
          
            // Create and draw the visualization.
            new google.visualization.LineChart(document.getElementById('visualization')).
                draw(data, {curveType: "function",
                            width: 500, height: 400,
                            vAxis: {maxValue: 10}}
                    );
          }
          
     
          google.setOnLoadCallback(drawVisualization);
        </script>
      </head>
      <body style="font-family: Arial;border: 0 none;">
        <div id="visualization" style="width: 500px; height: 400px;"></div>
      </body>
    </html>
    Où est mon erreur ?

  2. #2
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Février 2006
    Messages : 81
    Par défaut
    Salut
    tu fais ca;
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    var data = google.visualization.DataTable(jsonData);

    alors que tu as:
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    jsonData = data;

    et vu que ton
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    jsonData = data;
    et dans le l'appel ajax.

    c'est pas synchonisé

    essayes ca:
    Code html : 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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
        <title>
          Google Visualization API Sample
        </title>
        <script type="text/javascript" src="http://www.google.com/jsapi"></script>
        <script type="text/javascript">
          google.load('visualization', '1', {packages: ['corechart']});
        </script>
        <script type="text/javascript">
          function drawVisualization() {
                    var drawGraph = function(jsonData){
                            // Create and populate the data table.
                            var data = google.visualization.DataTable(jsonData);
             
             
                            // Create and draw the visualization.
                            new google.visualization.LineChart(document.getElementById('visualization')).
                                    draw(data, {curveType: "function",
                                                            width: 500, height: 400,
                                                            vAxis: {maxValue: 10}}
                                            );
                    }
            var json = $.ajax({
              url: "get_json.php", // make this url point to the data file
              dataType: 'json',
              async: false,
              success: (
            function(data) {
                            drawGraph(jsonData);
            })
            }).responseText;
     
     
                    
            
          }
     
     
          google.setOnLoadCallback(drawVisualization);
        </script>
      </head>
      <body style="font-family: Arial;border: 0 none;">
        <div id="visualization" style="width: 500px; height: 400px;"></div>
      </body>
    </html>

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2010
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 98
    Par défaut
    Salut,
    en fait mon erreur est que j'ai oublié ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
    Maintenant ça marche

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 17/06/2014, 17h04
  2. [Autres] Ajax, Google Chart Tools et Json
    Par Bullit84 dans le forum APIs Google
    Réponses: 1
    Dernier message: 18/05/2013, 07h53
  3. [MySQL] google pie chart php json
    Par othman22222 dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 18/10/2012, 04h49
  4. [AJAX] Mise en place d'un réponse dans Ajax.Request via JSON
    Par polothentik dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 13/05/2008, 09h05
  5. Réponses: 3
    Dernier message: 14/08/2007, 18h54

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