vendredi 14 octobre 2011

Primaire socialiste, tableau de bord avec Google Spreadsheet

3 commentaires
Google Spreadsheet est un bon outil et pour le travail afin de savoir jusqu'où on pouvait aller, je suis passé à un cas pratique qui colle à l'actualité. Le tableau de bord ci-dessus permet de consulter pour chaque candidat et département les résultats de la primaire socialiste

Comment l'utiliser
En haut à gauche se trouve deux menus. Positionnez votre souris dans une des deux cellules en gras, une flèche bleue apparait, cliquez dessus le un menu déroulant apparait. Il ne vous reste plus qu'à faire votre choix. 
Affichage du menu
Les données se mettront à jour automatiquement. Le champ "Candidat" modifie la partie de droite, le champ "Département" modifie la partie de gauche.
Les pourcentages en vert ou rouge indiquent si le candidat sur-performe ou sous-performe le résultat national dans le département sélectionné.

Remarques sur l'utilisation
Au lancement attendre un peu que les données apparaissent.
Pour que le fichier survive il faut toucher uniquement les menus et pas les données, c'est écrit en rouge dans le fichier :-).

Le lien
Si vous voulez plus d'informations sur les détails de la réalisation, c'est dans la suite du billet.
Consulter la spreadsheet : Tableau de bord primaire socialiste

Comment arriver à ce résultat
Pour la récupération des données, utilisation de la fonction "ImportXML" de google spreadsheet + un script pour parcourir tous les départements un par un sur le site de la primaire.
Un peu de retraitement manuel pour la mise en forme des données.
Les données sont stockées dans une autre spreadsheet, j'utilise les fonctions "Query" et "ImportRange" pour les récupérer. Pour la fonction "Query" il y a quelques requêtes SQL assez simples.
Les pourcentages en rouge et vert sont obtenus par le formatage conditionnel, il est assez simpliste (manuel) car cette fonctionnalité est moins évoluée que dans Excel.
Pour le graphique j'utilise le module graphique, assez évident :-)
Pour le top et flop je passe par la fonction "Query" avec dans la requête l'utilisation de la fonction SQL "limit".

Bilan
J'utilise de plus en plus Google Spreadsheet et franchement on arrive à un bon produit. Ce que j'apprécie le plus est la fonction query qui permet de faire des choses très évoluées et est nettement plus pratique que les tableaux croisés dynamiques d'Excel. Certes il faut connaitre un peu le langage SQL mais au final on peut faire énormément de choses.
J'utilise une spreadsheet comme source de données, ce qui permet de protéger les données sources et le temps de réponse reste bon. On peut critiquer le temps de chargement au lancement mais ça reste raisonnable.

3 Responses so far

  1. LegZ says:

    Après avoir fouillé sur le document (et en détail il me semble...), je ne trouve pas où le "ImportXML" et le script sont placés.

    Pouvez-vous nous donner un peu plus d'information sur la construction de ce document ?
    Merci !

  2. st3ph says:

    Bonjour,

    Le travail de récupération ne se trouve pas dans le fichier partagé, c'est dans un fichier externe. C'est pour cela que j'ai précisé que j'ai utilisé la formule importRange, on peut ainsi avoir la source de données déportées du fichier de présentation.

    Pour la question sur la construction du document source je ferai un article cette semaine pour détailler et ce sera un bon exemple.

    Bonne soirée.

  3. Anonyme says:

    Pour aller plus loin dans la présentation des données:
    https://groups.google.com/forum/?fromgroups#!forum/google-visualization-api

Leave a Reply