Visualisation de données

Dans cette scéance, vous allez apprendre à créer des visualisations basiques et à en tirer de l’information, puis nous explorerons des visualisations plus avancées.

Les logiciels de type tableur, que ce soit Excel, LibreOffice ou OpenOffice, incluent des outils de visualisation des données. Cependant, vous allez ici utiliser l'outil en ligne RAWGraphs qui est plus simple à utiliser et le rendu des graphiques produits est plus propre et plus facilement paramétrable.

Pour lancer l’application, allez sur le site de RAWGraphs et cliquez sur « Use it now ! ».

Importer des données

Exercice

  • Téléchargez le fichier data1.xlsx si vous utilisez Microsoft Excel, data1.ods si vous utilisez LibreOffice ou OpenOffice, ou data1.csv qui marche avec les trois logiciels et qui est un format d’échange de données tabulaires très répandu.
  • Ouvrez le fichier téléchargé dans le logiciel pour voir les données qu’il contient.

Dans ce tableur, chaque ligne correspond à une personne ayant répondu à une série de questions. En statistique, on nomme cela un individu. Pour chacun d’entre eux, vous avez son identifiant en colonne A (id), son score de bonnes réponses en colonne B (exactitude), son temps de réponse moyen en secondes en colonne C (temps de réponse), son âge en colonne D (age), sa classe sociale en colonne E (cs) et son genre en colonne F (genre). id, exactitude, temps de réponse et age sont appelées les variables du jeu de données. Pour résumer, chaque ligne correspond à un individu et chaque colonne correspond à une variable.

  • Dans votre tableur, sélectionnez la plage de cellules contenant les données et copiez-collez-là dans la zone blanche de "Paste your data" dans RAWGraphs
  • Dans le panneau de gauche, vous pouvez observer que le séparateur des milliers est le caractère « . » et le séparateur des décimales est le caractère « , ». En effet, l’application considère par défaut que vous utilisez le système de notation anglais. Le chiffre 10 000 000,00 s’écrit donc 10,000,000.00. Vous devez enlever le séparateur des milliers (le tableur n’en utilise pas) et changer le séparateur de décimale en « , ». Pour cela, le champ Thousand separator doit rester vide et le champ decimal separator doit contenir une ",".

Votre jeu de données est maintenant prêt à être visualisé.

Nuages de points

Dans RAWGraphs, un Bubble chart désigne ce que l’on appelle en français un nuage de points. Un tel graphique se compose de points représentant les individus.

Chaque point est positionné en fonction de deux variables quantitatives, i.e. de deux variables qui peuvent être représentées par des nombres sur lesquels on peut réaliser des opérations arithmétiques.

Par exemple, la colonne "temps de réponse" est une variable quantitative parce que cela a du sens d’additionner deux périodes de temps. En revanche, une variable "code postal" qui contiendrait les codes postaux des individus ne serait pas une variable quantitative car cela n'aurait pas de sens d’additionner deux codes postaux.

Dans un nuage de points, on a ainsi une première variable quantitative qui définit la position des points sur l’axe des abscisses (x) et une seconde variable quantitative qui définit la position des points sur l’axe des ordonnées (y).

Exercice

  • Descendez dans la page Web de RAWGraphs. Vous pouvez observer que l’application vous invite à choisir un type de visualisation. Sélectionnez Bubble chart.
  • Vous allez maintenant construire le nuage des points représentant les individus en fonction de leur âge et de leurs bonnes réponses. Pour cela, descendez dans la page Web de RAWGraphs jusqu’à la section Mapping et faites glisser les variables (DIMENSIONS) exactitude dans Y Axis et age dans X Axis.
  • Descendez dans la page, vous pouvez voir le nuage de points correspondant et l'exporter dans différents formats.
nuage de points

Dans ce premier nuage de points, vous pouvez voir que les points suivent plus ou moins une diagonale qui va du bas à gauche vers le haut à droite. On peut donc dire que généralement, plus les participants ont un âge élevé, plus ils fournissent de bonnes réponses. En statistique, on dit qu’il existe une corrélation positive entre les deux variables. Il est d’ailleurs possible de quantifier cette corrélation à l’aide de ce que l’on appelle le coefficient de corrélation. C’est une mesure qui se calcule à partir de deux variables et qui va de -1 à 1. Plus la valeur calculée est proche de 1, plus il existe une corrélation positive entre les deux variables. Elle est ici de 0,66.

Exercice

  • Dans la section Mapping, cliquez sur la petite croix à droite de exactitude dans Y-Axis afin de supprimer la variable de l’axe des ordonnées et mettez-y à la place la variable temps de réponse :

Cette fois, les points se répartissent le long de la diagonale allant du haut à gauche vers le bas à droite. Cela signifie que plus les participants sont âgés, plus leur temps de réponse est faible. En statistique, on dit qu’il existe une corrélation négative entre les deux variables. Le coefficient de corrélation des deux variables tend alors vers -1 (il est ici de -0,68).

Exercice

  • Dans la section Mapping, mettez exactitude à la place de age sur X Axis

Dans ce troisième exemple, les points ne suivent aucune diagonale. On dit alors qu’il n’existe pas de corrélation entre ces deux variables et leur coefficient de corrélation est proche de 0 (il est ici de 0,04).

Il est aussi possible de créer des nuages de points montrant plus de deux variables à l’aide de la couleur et de la taille (aire) des points.

Exercice

  • Dans la section Mapping, ajoutez la variable age dans Size et la variable genre dans Color :

On peut observer ici que plus les points ont une exactitude élevée et un temps de réponse faible, plus leur aire est élevée, ce qui correspond aux corrélations déjà observées dans les deux premiers nuages de points. On peut aussi observer que les deux couleurs de points se répartissent assez uniformément sur le nuage, ce qui veut dire que la variable genre n’est pas corrélée avec les variables exactitude et temps de réponse.

Diagrammes en barres, diagrammes en bâtons et histogrammes

En statistique, il est souvent utile de visualiser comment les individus se répartissent en fonction d’une variable. Par exemple, on peut vouloir comparer si le nombre de femmes est équivalent au nombre d’hommes dans un jeu de données. Pour faire cela, il existe différents types de graphiques et le choix se fait selon le type de la variable que l’on veut étudier.

Variable qualitative nominale

Une variable qualitative nominale est une variable dont les valeurs, appelées modalités, sont des noms, des catégories, des étiquettes qui ne peuvent pas être ordonnées naturellement. Dans notre jeu de données, c’est le cas pour la variable genre. Il n’y a pas d’ordre naturel entre ses deux modalités F et M.

Pour visualiser la répartition des individus selon les deux modalités de cette variable, i.e. la distribution de la variable, on utilise un diagramme en barres séparées.

Exercice

  • Dans RAWGraphs, dans la section Choose a chart, sélectionnez Bar chart comme type de graphique/
  • On cherche à construire un diagramme en barres séparées. Or, par défaut dans RAWGraphs, les barres sont collées les unes aux autres. Pour obtenir des barres séparées, il va donc falloir réduire leur largeur. Pour cela, ouvrez à gauche le menu CHART (en cliquant sur le petit « + ») et mettez un Padding à 100.
Diagramme baton

Dans cet exemple, la hauteur des barres montre le nombre d’individus pour chaque modalité (F et M) de la variable. Ce nombre est appelé effectif. Vous voyez ainsi qu’il y a 58 femmes et 42 hommes.

Il est souvent utile de visualiser la fréquence à la place de l’effectif, i.e. le pourcentage des individus par modalité. Ici, comme nous avons 100 individus, les pourcentages seraient de 58% pour F et 42% pour H. À noter cependant que modifier le graphique pour représenter les fréquences à la place des effectifs change seulement son axe des ordonnées : la hauteur relative des barres reste la même.

Variable qualitative ordinale

Une variable qualitative ordinale est une variable dont les modalités sont des noms, des catégories, des étiquettes qui peuvent être ordonnées naturellement. Dans notre jeu de données, c’est le cas de la variable cs (pour classe sociale), dont les modalités peuvent être ordonnées des moins aisés aux plus aisés : classe défavorisée puis classe ouvrière puis classe moyenne puis classe bourgeoise.

Pour visualiser la distribution d’une variable qualitative ordinale, on utilise un diagramme en barres juxtaposées.

Exercice

  • Dans la section Mapping, mettez la variable cs sur Bars.
  • Dans le menu CHART, remettez le Padding à 1 pour que les barres soient juxtaposées et mettez Original à la place de Name pour Sort bars by afin que les modalités le long de l’axe des abscisses ne soient par ordonnées par ordre alphabétique. Vous pouvez ainsi observer l’effectif pour chaque modalité de la variable cs.
Diagramme baton

Variable quantitative continue

Une variable quantitative continue est une variable numérique sur laquelle il est possible de faire des opérations arithmétiques (donc quantitative) et qui peut prendre un nombre infini de valeurs (donc continue). Dans notre jeu de données, age, exactitude et temps de réponse sont de ce type.

Comme ces variables peuvent prendre un nombre infini de valeurs, il va falloir, pour visualiser leur distribution, répartir les individus dans des classes de valeurs. Par exemple, pour la variable exactitude, on peut répartir les individus dans les classes suivantes :

  • [40,50[ pour les individus obtenant un score entre 40 (inclus) et 50 (exclu),
  • [50,60[ pour les individus obtenant un score entre 50 (inclus) et 60 (exclu),
  • [60,70[ pour les individus obtenant un score entre 60 (inclus) et 70 (exclu),
  • [70,80[ pour les individus obtenant un score entre 70 (inclus) et 80 (exclu),
  • [80,90[ pour les individus obtenant un score entre 80 (inclus) et 90 (exclu),
  • [90,100] pour les individus obtenant un score entre 90 (inclus) et 100 (inclus).

Exercice

  • Pour calculer ces classes, ouvrez le fichier de données dans un tableur (Excel, LibreOffice ou OpenOffice). Sur la première ligne de la colonne G, écrivez classe, puis sur la seconde ligne, rentrez la formule suivante : =SI(B2<50;"[40,50[";SI(B2<60;"[50,60[";SI(B2<70;"[60,70[";SI(B2<80;"[70,80[";SI(B2<90;"[80,90[";"[90,100]")))))
  • Répétez cette formule sur toute les lignes de la colonne G.
  • Dans la section "Load your data" de RAWGraphs, cliquez sur le bouton "Change data" (en bas à gauche) et copiez-collez les données avec la nouvelle colonne.
  • Vérifiez que Bar chart est toujours sélectionné dans la section Choose a chart et mettez la variable class dans Bars dans la section Mapping. Observez le résultat.
Diagramme baton

Vous obtenez le graphique suivant qui montre la répartition des individus selon les classes d’exactitude (si vos classes ne sont pas ordonnées correctement, sélectionnez Name devant Sort bars by dans le menu CHART à gauche) :

Boites à moustaches

Une boite à moustaches permet de représenter 5 valeurs intéressantes d’une variable quantitative :

  • son minimum,
  • son premier quartile, une valeur telle que 25% des individus ont une valeur inférieure à elle,
  • son deuxième quartile, plus communément appelé sa médiane, une valeur telle que 50% des individus ont une valeur inférieure à elle,
  • son troisième quartile, une valeur telle que 75% des individus ont une valeur inférieure à elle,
  • son maximum.

Prenons comme exemple la boite à moustaches de la variable exactitude :

Diagramme baton

La ligne horizontale du bas représente la valeur minimale de la variable. Autrement dit, le participant qui a obtenu le plus bas score d’exactitude a eu 42,73. Ensuite le bas du rectangle bleu correspond au premier quartile : 25% des participants ont donc obtenu un score inférieur à 60,795. La barre horizontale blanche dans le rectangle bleu correspond à la médiane : 50% des participants ont eu un score inférieur à 67,28 (donc 25% des participants ont eu un score entre 60,795 et 67,28). Le haut du rectangle représente le troisième quartile : 75% des participants ont eu un score inférieur à 74,0125 (donc 25% des participants ont eu un score entre 67,28 et 74,0125). Enfin, la barre horizontale du haut représente la valeur maximale : le participant qui a obtenu le haut score d’exactitude a eu 100 (donc 25% des participants ont eu un score entre 74,0125 et 100).

Exercice

  • Pour mettre en pratique ces notions, vous allez créer sur RAWGraphs des boites à moustaches permettant de voir les temps de réponse des participants en fonction de leur âge. Pour cela, vous allez devoir commencer par créer une variable classe age qui va regrouper les participants selon les classes suivantes :
    • <25 pour les individus ayant moins de 25 ans,
    • [25,30[ pour les individus ayant entre 25 (inclus) et 30 ans (exclu),
    • [30,35[ pour les individus ayant entre 30 (inclus) et 35 ans (exclu),
    • [35,40[ pour les individus ayant entre 35 (inclus) et 40 ans (exclu),
    • >40 pour les individus ayant plus de 40 ans.
  • En colonne H du fichier de données, écrivez classe age sur la première ligne et rentrez la formule suivante sur la deuxième ligne : =SI(D2<25;"<25";SI(D2<30;"[25,30[";SI(D2<35;"[30,35[";SI(D2<40;"[35,40[";">40"))))
  • Copiez-collez cette formule sur toutes les lignes.
  • Dans la section "Load your data" de RAWGraphs, cliquez sur le bouton "Change data" (en bas à gauche) et copiez-collez les données avec la nouvelle colonne :
  • Dans la section "Choose a chart", sélectionnez Box Plot.
  • Dans la section "Mapping", mettez la variable temps de réponse sur Y Axis et la variable classe age sur Groups.
  • Recommencez avec un type de chart Violin plot.

Sur la boite à moustaches, on voit ainsi clairement que le temps de réponse diminue avec l’âge. Sur le Violin plot, on voit le diagramme de densité.

Diagrammes en secteurs

Un diagramme en secteurs ou diagramme circulaire ou camembert permet de représenter l’effectif ou la fréquence de chaque modalité d’une variable qualitative à l’aide de secteurs dont l’angle est proportionnel à cet effectif ou cette fréquence. Dans cette partie, vous allez représenter l’effectif pour les modalités de la variable cs, autrement dit le nombre d’individus appartenant à chaque classe sociale.

Exercice

  • Commencez par télécharger le jeu de données data2.xlsx, data2.ods ou data2.csv.
  • Ouvrez ce fichier dans un tableur, vous pouvez observer qu’il contient l’effectif de chaque modalité de la variable cs, i.e. le nombre d’individus appartenant à chaque classe sociale.
  • Copiez-collez le tableau des valeurs dans la section "Load your data" de RAWGraphs :
  • Dans la section "Choose a chart", choisissez Pie chart.
  • Dans la section "Mapping", ajoutez chaque classe dans Arcs
  • Dans le menu ARTBOARD, mettez Width et Height à 200, Show legend à Yes et Legend width à 150.
  • Dans le menu LABELS, mettez Show values on arcs à Yes.
secteur

Ce camembert vous permet de voir que les classes moyenne et ouvrière sont les plus représentées dans le jeu de données, alors que les classes bourgeoise et défavorisée le sont moins.

Les diagrammes radar

Un diagramme radar ou en toile d'araignée est une visualisation d’un tableau à deux dimensions ou plus de trois variables quantitatives représentées sur des axes à partir du même point.

Exercice

  • Commencez par télécharger le jeu de données FifaPlayersStats.xlsx, FifaPlayersStats.ods, FifaPlayersStats.csv dans un tableur et observez son contenu.
  • Dans la section "Choose a chart", choisissez "Radar Chart".
  • Dans la section "Mapping", paramétrez-le ainsi : dans Series mettre Nom, dans couleur mettre Club et dans Spoke, mettre toutes les champs correspondant aux capacités des joueurs comme agility, balance, shotpower....

Pour plus de détails

Les hiérarchies

Un Dendrogamme est un diagramme de regroupement hiérarchique, permettant d'organiser des données en arborescence en fonction de leurs similitudes.

Exercice

  • Commencez par télécharger le jeu de données FelidaeClassification.xlsx, FelidaeClassification.ods, FelidaeClassification.csv dans un tableur et observez son contenu.
  • Dans la section "Choose a chart", choisissez Linear dendogram.
  • Dans la section "Mapping", paramétrez-le ainsi : dans Hierarchy mettre dans l'ordre (du noeud le plus haut vers le noeud le plus bas) Family, Subfamily, Genus et subspecies. Dans size et dans color, mettre Risk of extension (sum). Dans label mettre Name.
  • Dans la section "Choose a chart", essayez la visualisation circular dendogram.

Pour plus de détails sur les linear dendogram et les circular dendogram

dedogramcircular-dendogram

Hiérarchie et proportion

Les diagrammes de type Treemap, Treemap (Voronoi), Circle Packing et Sunburst permettent de représenter des hiérarchies pour lesquelles on possède des proportions associées aux feuilles de la hiérarchie.

Exercice

  • Commencez par télécharger le jeu de données PopCity.xlsx, PopCity.ods, PopCity.csv dans un tableur et observez son contenu.
  • Dans la section "Choose a chart", vous allez choisir successivement TreeMap, TreeMap Voronoi, Circle Packing et Sunburst.
  • Dans la section "Mapping", poru chacun, paramétrez-le ainsis : dans Hierarchy mettre dans l'ordre (du noeud le plus haut vers le noeud le plus bas) Continent, Country, City. Dans size et dans color, mettre Population (sum).

Pour plus de détails sur les Tree Map et les Tree Map (voronoi)

Pour plus de détails sur les Circle Packing

treemaptreemap-voronoi
treemaptreemap

Streamgraph

Un graphique de flux, ou graphique de flux, est un type de graphique à aires empilées qui est déplacé autour d'un axe central, ce qui donne une forme organique fluide.

Exercice

  • Commencez par télécharger le jeu de données OlympicsMedals.xlsx, OlympicsMedals.ods, OlympicsMedals.csv dans un tableur.
  • Observez son contenu.
  • Dans la section "Choose a chart", choisissez Streamgraph.
  • Dans la section "Mapping", paramétrez-le ainsi : Mettre Year dans X Axis, Medal dans Size et Macro Area dans Streams.

Pour plus de détails.

streamgraph

Diagramme de Sankey

Un diagramme de Sankey ou diagramme Sankey est un type de diagramme de flux dans lequel la largeur des flèches est proportionnelle au flux représenté.

Exercice

sankey

Pour plus de détails

Fin du TD

RAWGraphs permet de créer d’autres types de visualisation. Dans la partie Load your data cliquez sur Try our data samples et sélectionnez les différents jeux de données. Pour chacun d’entre eux, utilisez le type de graphique recommandé. Aidez-vous des tutoriels en ligne si nécessaire.