Lien vers la librairie
- Librairie facile à utilisée
- Grand choix de graphiques à disposition
- Personnalisation possible
- Sur des données au format
DataTable
spécifique
Lien vers la librairie
DataTable
spécifiqueLes cinq étapes à suivre pour créer un graphique avec Google Charts
En 2 étapes :
https://www.google.com/jsapi
dans une balise script
corechart
, table
, …) avec la fonction google.load
prenant en paramètres :
visualization
1
pour version stable, 1.1
pour la nouvelle)Ajout d’une fonction (google.setOnLoadCallback (f)
) permettant le lancement d’une fonction f
lorsque la librairie est chargée, pour éviter les problèmes de synchronisation
<script type="text/javascript" src="https://www.google.com/jsapi"> </script> <script type="text/javascript"> // Chargement de la librairie et du package corechart google.load('visualization', '1.0', {'packages':['corechart']}); // Définition de la fonction à exécuter (drawChart) lorsque la // librairie est chargée google.setOnLoadCallback(drawChart); ... </script>
Utilisation de la classe google.visualization.DataTable
:
Possibilité de créer un objet de différentes manières :
SQL
sur une source Spreadsheet ou Fusion Table// Création d une variable, instance de DataTable var data = new google.visualization.DataTable(); // Définition des colonnes de la table data.addColumn('string', 'Topping'); data.addColumn('number', 'Slices'); // Insertion des lignes (ici en une fois) data.addRows([ ['Mushrooms', 3], ['Onions', 1], ['Olives', 1], ['Zucchini', 1], ['Pepperoni', 2] ]);
Chaque graphique est personnalisable à l’aide de paramètres pour certains communs à tous, pour d’autres spécifiques à chaque type de graphique
Utilisation d’un objet JSON contenant la définition des paramètres du graphique
Quelques paramètres communs :
width
et height
: largeur et hauteur du graphiquetitle
: titre// Création d un objet JSON var options = { // on définit ici le titre et la taille du graphique 'title':'How Much Pizza I Ate Last Night', 'width': 600, 'height': 400, // ainsi que les paramètres de la légende, qui peuvent être // détaillée dans un objet JSON 'legend': { position: 'bottom', textStyle: { color: 'blue', fontSize: 10 } } };
En 2 étapes :
google.visualization
prenant en paramètre l’id de la div conteneur)
PieChart
pour un diagramme circulaireBarChart
pour un diagramme en barre horizontaledraw()
prenant en paramètre deux objets
// Création d une instance de PieChart, et indication du conteneur // du graphique var cont = document.getElementById('chart_div'); var chart = new google.visualization.PieChart(cont); // Dessin du graphique selon les données et les options // en paramètres chart.draw(data, options);
Note Dans le corps du fichier HTML doit se trouver une div
dont l’identifiant est chart_div
<body> <div id="chart_div"></div> </body>
Possibilité d’ajouter un listener sur un graphique (via la fonction google.visualization.events.addListener()
) prenant en paramètre :
ready
, select
, error
, onmouseover
et onmouseout
Fonctions des instances intéressantes dans ce cas :
getSelection
, getValue
setSelection
// Définition de la fonction a exécuter lors de l événement function selectHandler() { // Récupération de la sélection var selectedItem = chart.getSelection()[0]; // si sélection if (selectedItem) { // récupération de la valeur choisie var topping = data.getValue(selectedItem.row, 0); // affichage via pop-up classique alert('The user selected ' + topping); } } // Ajout du listener sur le graphique, pour l événement "select" google.visualization.events.addListener( chart, 'select', selectHandler);