Ce que j'ai commencé à piger sur la visualisation de données
À quoi sert un graphe nom de diou ?
Quels sont les types de données à représenter du coup ?
Et maintenant quels sont les types de variables ?
Quels sont les types de graphes ?
Il y a 4 grandes familles de graphes (à ma connaissance)
Quel graphe pour afficher ses données ?
Quel graphe pour visualiser des données ? On tend vers un monde où les données deviennent le cœur névralgique de tout business (on n’est pas à une vache près). En témoigne le monde qui nous entoure, tout est fait de façon à raisonner par des données. Sans leur stockage et leur exploitation il serait difficile pour Netflix ou Youtube de nous proposer quoi regarder, Linkedin notre futur job, Maps notre route, Google Traduction de traduire, etc.
Le problème étant que des données brutes sont difficilement interprétables et encore moins exploitables. C’est pourquoi, il existe pléthore de librairies de graphe pour afficher des données. Le plus rigolo est qu’il en existe tellement qu’on a tendance à négliger le choix de la librairie. Pire :
lorsqu’on cherche à représenter des données, on cherche souvent des graphes avec pléthores d’options inutiles
on a du mal à concevoir l’idée de représenter des données dans une autre représentation
À quoi sert un graphe nom de diou ?
Un graphe représente des données numériques et de l’information afin d’analyser les relations entre des données. Autrement dit, communiquer de l’information, quelle que soit la finalité, en vue d’identifier l’idée principale/le message/la tendance.
Le gain de temps grâce aux graphes est grandissimo, comme dirait l’autre.
Cela dit, un graphe ne se suffit pas à lui même. De par, les choix arbitraires des axes, seules quelques informations sont présentées. Ce manque d’exhaustivité peut contraindre à une mauvaise interprétation des données. Il doit de ce fait être complété par du texte explicatif. Il arrive bien souvent qu’on ait pas réellement besoin d’un graphe. Un texte peut se suffire.
Une autre tendance est d’utiliser des graphes élégants et/ou complexes avec une multitude de fonctionnalités mais inadaptés au besoin. Ne jamais perdre de vue l’objectif d’un graphe, à savoir faire passer le message de manière simple et efficace.
Encore faudrait-il définir la simplicité et l’efficacité…
Soit, raisonnons plutôt en données.
Quels sont les types de données à représenter du coup ?
temporelle
C’est-à-dire représenter l’évolution d’une variable en fonction du temps.
Si la variable est discrète, on utilise en général un diagramme en bâtons. En revanche, si la variable est continue, il est plus courant de les représenter par une courbe (line plot) ou un graphique d’aire (area chart).
géolocalisée
C’est-à-dire représenter une variable dans chacune des unités géographiques d’une entité globale.
Son avantage est de pouvoir représenter les informations d’une partie (une ville par exemple) par rapport à un ensemble (un pays). Mais il n’est pas toujours judicieux de comparer une partie avec une autre puisque le contexte de chaque sous ensemble est différent (chaque ville n’a pas le même nombre d’habitants).
arborescence
C’est-à-dire représenter des données hiérarchiques dans un espace limité. Le treemap est utilisé pour ce faire.
Et maintenant quels sont les types de variables ?
Variable de catégorie
Les variables de catégorie ont un nombre fini de catégories sans ordre pré-établi. Par exemple, les équipes de football française de haut niveau.
On utilisera des Bar, Dot Plot lorsqu’on a des métriques à mettre en évidence. Et Pie, Treemap, Stacked Bar lorsqu’il s’agit d’avoir une vision globale.
Variable discrète
Les variables discrètes sont des variables numériques triées. Bar en colonne, 2D Heat, Stacked en Bar.
Variable continue
Les variables continues sont des variables numériques ayant un nombre infini de valeurs dans un intervalle donné. Par exemple, un prix ou une date.
On utilise pour ce faire des Line Table, Line, Area, Bar (en colonne parce que le temps est sur l’axe des abscisses).
Quel que soit le type de données, il convient de choisir également un type de graphe.
Quels sont les types de graphes ?
Time Series
Le time series ou communément appelé histogramme est un graphe qui montre l’évolution d’une variable à travers le temps. Le temps est un indicateur clé ici représenté sur l’axe des abscisses en général. Par exemple, pour comparer l’évolution du salaire de postes au sein d’une entreprise par rapport aux années d’expériences.
Frequency Distribution
Afin de montrer de montrer des données contenant des fréquences, des catégories … des données qu’on puisse rassembler, il convient d’utiliser un Frequency Distribution. Par exemple, pour montrer la grille des salaires des salariés d’une entreprise. On trouve plusieurs fourchettes de salaire.
Quelques exemples de visualisation :
Les tableaux
On utilise un tableau lorsque le public visé est très diversifié et chaque individu est intéressé par une variable différente. De par sa forme, l’individu va lire la ligne du tableau qui l’intéresse.
C’est intéressant lorsque le format de la donnée n’est pas standardisé, comme ci-dessous :
Il est déconseillé d’utiliser les tableaux dans une présentation parce que pour lire la ligne du tableau qui l’intéresse, la personne doit avoir le tableau sous les yeux. Vous perdrez son attention.
Une forme de tableau intéressante est le heatmap. Il colorise les cellules (en fonction de la valeur) de sorte à faciliter la lecture. Aider le cerveau à voir ce qui est intéressant sans trop d’efforts.
Les graphes
À la différence des tableaux, on ne lit pas un graphe, on le regarde. C’est donc plus efficace (en théorie, du moins).
Il y a 4 grandes familles de graphes (à ma connaissance)
Points
Par exemple le scatterplot. ll permet de montrer la relation entre deux choses en utilisant les deux axes. Ce sont les coordonnées de chaque point sur l’axe des abscisses et l’axe des ordonnées qui représentent les valeurs de chacune des variables. C’est ainsi qu’il montre une corrélation.
Leur lecture requiert une bonne attention. Sur l’exemple ci-dessous, les points montrent une corrélation entre le nombre de clics et le coût. On peut aller plus loin en jouant sur le rayon du point proportionnée à sa valeur intrinsèque.
Lines
On utilisera ce type de graphe pour des times series/valeurs continues (des dates, par exemple). Du fait que les valeurs soient liées entre-elles, ce type de graphe s’y prête bien de par l’utilisation de lignes.
L’avantages est de pouvoir comparer simultanément et facilement mais seulement avec des valeurs continues.
Bars
Graphe très commun donc une courbe de compréhension très faible. Toujours faire attention à ce que l’axe des abscisses part de zéro parce que les yeux regardent en haut du bloc et comparent les blocs. Question d’honnêteté et de non manipulation.
Avec la notion de catégories (dates, par exemple), il peut être très intéressant de mettre plusieurs séries sur une barre :
(À noter que j’utilise ici des labels sur les axes, il est conseillé de le préciser excepté si ça va de soi ou qu’on souhaite que la personne se concentre sur le graphe).
Le Stacked vertical bar chart va permettre de montrer la décomposition du résultat mais c’est rarement intéressant de l’utilisation, en cause sa difficulté de lecture (pour comparer les décompositions notamment) :
A la différence du horizontal bar chart qui se lit naturellement :
Idéal lorsque le label est long.
Si les catégories ne suivent pas un ordre logique (comme les dates), revoyez leur ordre.
De cette manière, le stacked bar chart est plus facile à lire :
La différence entre un histogram et bar chart est qu’avec un histogram, les axes sont numériques. Un bar chart a des espaces entre les colonnes. L’histogram est continu ce qui permet de mesurer quelque chose sur l’axe des ordonnées. Là où sur un bar chart on utilise des catégories.
L’histogram est intéressant pour montrer des tendances en analyse de données donc comprendre les distributions. En revanche, il ne permet pas d’afficher plus d’une distribution sur un axe.
Area
L’humain n’est pas très fort pour comprendre des valeurs dans des espaces en deux dimensions. C’est pourquoi les area graphs ne sont pas très utilisés. Ils peuvent cependant être intéressants lorsqu’il y a une multitude de variables, là où un bar chart montre qu’une caractéristique (le CA sur l’année (bar chart) contre le CA et le nombre d’employés sur l’année (area), par exemple).
Quel graphe pour afficher des données (grosso modo) ?
Il peut être judicieux d’utiliser un Scatteplot si on cherche à montrer un lien entre plusieurs variables.
Si on cherche à montrer un rang, on préférera un Ordered Bar/Column, Bump (pratique pour montrer le rang lorsqu’il y a plusieurs dates), Ordered Proportional Symbol (lorsqu’il y a de grosses variations, quand le détail n’est pas important), Slope (parfait pour montrer comment le rang a évoluée dans le temps).
Si on cherche à montrer l’évolution : Line, Column, Column + Line Timeline, Slope, Area chart, Priestley Timeline (quand la date est un critère clé), Circle Timeline (pour montrer des variables discrètes). En ce qui concerne un changement : Time Series Plot
Si on cherche à montrer la place occupée d’un sous ensemble dans son ensemble : Pie (précision par importante), Treemap, Stacked column/bar, Donut (permet d’inclure plus d’informations).
Si on cherche à montrer des divergences : Histogram, Dot Plot, Cumulative Curve.
Bref
Bien que certaines manières de représenter les données sont plus pertinentes que d’autres, il n’existe pas une manière unique d’afficher celles-ci. Tester et voir si la personne comprend le message que vous essayez de faire passer est encore la meilleure manière de choisir. Bien cerner ce dont la personne a besoin de savoir en lisant le graphe est tout aussi important que de choisir la forme.
D’une manière générale il est important d’avoir :
un titre du graphe clair, explicite et non ambigu.
des unités de mesure.
une légende brève (l’échelle, le type de ligne, la couleur, etc.).
un message à passer, uniquement un.
peu de connaissances nécessaires à sa compréhension.
Tout ce que j’oublie à chaque fois.
Avant de se lancer dans la création d’un graphe, il en vient d’identifier les réponses à ces deux questions :
Qui est votre audience ?
Qui va lire ce graphe ? C’est-à-dire son âge, sa profession, ses compétences, etc. Plus vous êtes vague sur votre persona, moins votre communication sera efficace !
Quelle est votre relation avec votre audience ? Êtes-vous déjà crédible à leurs yeux ?
Qu’est-ce que vous voulez que votre audience apprenne ? C’est-à-dire qu’est-ce que votre cible va devoir retenir après lecture. Pourquoi est-ce qu’ils doivent lire ce graphe ? Qu’est-ce que ce dernier va leur apprendre ?
Le contexte comprend également le format de communication, s’agit-il d’une présentation écrire ou orale ? Une présentation écrite requiert de la précision de par l’absence de contrôle. A l’oral, on maîtrise effectivement le tempo, il est possible de revenir en arrière, accélérer ou s’attarder.
Quel est le ton à employer (expliquer un succès, un échec, etc.) ? La réponse à cette question a une incidence directe sur le choix du type de graphe.
Quelles données afficher ? Quelles sont les données disponibles ? Est-ce que l’audience est familière avec cette donnée ?
Bien sûr, il arrive qu’on ait une connaissance limitée du contexte parce que la demande vient d’un client. En général on arrive à déduire des choses à partir de bribes d’informations.