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

API standards et tierces Java Discussion :

API Google Chart


Sujet :

API standards et tierces Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Collégien
    Inscrit en
    Mars 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Mars 2013
    Messages : 6
    Points : 10
    Points
    10
    Par défaut API Google Chart
    Bonjour,

    J’aimerais savoir comment utiliser l'API de Google concernant les Charts, dans mon application java (NetBeans IDE) ?

    Quelqu'un saurait-il me guider un peu ?

    Merci d'avance pour votre attention.

  2. #2
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 854
    Points
    22 854
    Billets dans le blog
    51
    Par défaut
    Bonjour,

    Google Chart est une API HTML5 (+JavaScript) donc il te faut 1) une connexion internet active et 2) la possibilité d'afficher du HTML/d’intégrer un navigateurs embarqué dans une application Java.

    Coté AWT, tu peux oublier.

    Coté Swing, je ne sais pas si JEditorPane supporterai GoogleChart vu son grand age + le fait que son support de HTML 4 n'est même pas complet.

    Coté SWT, aucune idée.

    Coté NetBeans Platform, aucune idée (a priori voir Swing).

    Coté Eclipse RPC, aucune idée (a priori voir SWT).

    Coté JavaFX, il suffit d'utiliser le contrôle WebView. Par exemple :

    TestPie.html (il s'agit en fait du code de test disponible sur le didacticiels de Google Chart)
    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
    <html>
      <head>
        <!--Load the AJAX API-->
        <script type="text/javascript" src="https://www.google.com/jsapi"></script>
        <script type="text/javascript">
     
          // Load the Visualization API and the piechart package.
          google.load('visualization', '1.0', {'packages':['corechart']});
     
          // Set a callback to run when the Google Visualization API is loaded.
          google.setOnLoadCallback(drawChart);
     
          // Callback that creates and populates a data table,
          // instantiates the pie chart, passes in the data and
          // draws it.
          function drawChart() {
     
            // Create the data table.
            var data = new google.visualization.DataTable();
            data.addColumn('string', 'Topping');
            data.addColumn('number', 'Slices');
            data.addRows([
              ['Mushrooms', 3],
              ['Onions', 1],
              ['Olives', 1],
              ['Zucchini', 1],
              ['Pepperoni', 2]
            ]);
     
            // Set chart options
            var options = {'title':'How Much Pizza I Ate Last Night',
                           'width':400,
                           'height':300};
     
            // Instantiate and draw our chart, passing in some options.
            var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
            chart.draw(data, options);
          }
        </script>
      </head>
     
      <body>
        <!--Div that will hold the pie chart-->
        <div id="chart_div"></div>
      </body>
    </html>

    TestPie.java
    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
    package googlechart;
     
    import java.net.URL;
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.layout.StackPane;
    import javafx.scene.web.WebView;
    import javafx.stage.Stage;
     
    public class TestPie extends Application {
     
        @Override
        public void start(Stage primaryStage) {
            final URL url = getClass().getResource("TestPie.html");
            final WebView webView = new WebView();
            webView.getEngine().load(url.toExternalForm());
            final StackPane root = new StackPane();
            root.getChildren().add(webView);        
            final Scene scene = new Scene(root, 500, 500);        
            primaryStage.setTitle("Test Google Chart");
            primaryStage.setScene(scene);
            primaryStage.show();
        }
     
        public static void main(String[] args) {
            launch(args);
        }    
    }
    Ici, j'utilise un contenu statique : c'est a dire que le HTML est déjà pré-généré. Le fichier HTML se trouve dans le même package que le fichier Java. Il est chargé au démarrage de l'application et si une connexion internet est active, il ira construire et afficher le graphique en camembert.

    Cependant il est possible que ton app construise une chaine au format HTML avec ses propres données de manière à montrer des données générées dynamiquement par l'app. On place alors ce contenu HTML dans un fichier temporaire et on l'affiche ensuite dans WebView de manière similaire a ce qui est fait ici avec le contenu statique.

    Il est de plus possible de permettre au code Java de dialoguer avec le code JavaScript et vice versa ce qui devrait permettre de pouvoir modifier le contenu de la page au vol. Plus d'info dans la FAQ JavaFX.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  3. #3
    Rédacteur

    Avatar de autran
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2015
    Messages
    1 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2015
    Messages : 1 241
    Points : 7 653
    Points
    7 653
    Billets dans le blog
    55
    Par défaut
    Il y a une solution en embarquant dans ton appli swing un browser chromium.

    La société teamdev a développé une bibliothèque JxBrowser qui permet de faire exécuter du code HTML5 AJAX dans une appli desktop.

    Regarde le tuto de Vladimir Ikryanov à l'adresse suivante : http://java.dzone.com/articles/google-maps-java-swing.

    Bon courage
    Développeur Java
    Site Web

Discussions similaires

  1. Formation Google Visualization / Google Charts / API
    Par Milkamelia dans le forum API standards et tierces
    Réponses: 0
    Dernier message: 06/07/2015, 16h15
  2. Erreur Python (API Google charts)
    Par Invité dans le forum Général Python
    Réponses: 1
    Dernier message: 29/10/2010, 12h45
  3. C# utilisation api google
    Par mohican13 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 20/07/2006, 08h03
  4. api google
    Par zouha dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 29/04/2006, 12h21
  5. Webservice API Google
    Par mchicoix dans le forum XMLRAD
    Réponses: 3
    Dernier message: 20/02/2005, 12h44

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