La visualisation
Survol historique très bref
6200 ans avant J. C. : Çatalhöyük (en Turquie) Premier plan de ville
≈1000 après J. C. Premier graphique sur un plan cartésien avec le temps en axe horizontal (et ce, quelques siècles avant René Descartes (nom Latin: Renatus Cartesius), pour qui on a nommé le plan cartésien)
William Playfair, 1786 Le premier à publier beaucoup de graphiques de données statistiques. À droit: le premier diagramme en rectangle (« bar chart »), quoiqu’il n’était pas un histogramme.
William Playfair, 1801 Le premier camembert (« pie chart »)
Charles Joseph Minard, 1869 L’armée de Napoléon. 400 000 hommes sont partis de la Pologne en 1812. Arrivés à Moscou en septembre, ils ont vu que la ville était pillée et desertée. Seulement 10 000 homes sont revenus, les autres tués ou morts de fain ou froid. 5 variables sont montrées dans le diagramme: Position de l’armée (latitude et longitude) Temps et température (voir le petit graphique en dessous de la carte) Taille de l’armée (épaisseur de la bande brune ou noire)
Deux sortes de données Les données multidimensionnelles Les graphes (y compris les arborescences)
Les données multidimensionnelles (relations, fonctions, tableaux)
Rappel de mathématiques de secondaire Étant donné deux ensembles, un domaine (exemple: R) et un codomaine (exemple: R), on peut former le produit cartésien (RxR=R2) qui est l’ensemble de tous les pairs (x,y) possibles Une relation est un sous ensemble du produit cartésien Exemple: l’équation x = y2 correspond à un sous-ensemble de R2 Une relation s’appelle une fonction si chaque member x du domain a au plus un membre y correspondant dans le codomaine x=y2 n’est pas une fonction car (4,2) et (4,-2) sont tous les deux des membres de la relation définié par l’équation Une façon simple de représenter une relation (ou une fonction) est simplement d’énumérer les pairs de la relation dans un tableau
Exemples de relations (c.-à-d. de données multidimensionnelles) La fonction y = x^0.5: x y --- --- 0 0 1 1 4 2 9 3 ... La relation dans un tableau d'une base de données relationnelles: Nom_de_client Produit_acheté Prix Date ... ------------- ----------------- ------- ------------ ----- Robert G. Trombone 500.00 2008 mars 7 . Robert G. Partitions vol. 1 45.00 2008 mars 7 . Lucie M. Flute 180.00 2007 nov 11 . Cynthia S. Partitions vol. 2 40.00 2008 juin 16 Jules T. Piano 6000.00 2008 jan 10 Jules T. Partitions vol. 1 45.00 2008 jan 13 Une vidéo (par exemple, fichier .avi): x y temps rouge vert bleu --- --- ------- ------- ------ ------ 0 0 0 255 0 0 0 1 0 200 10 6 0 0 0.1 255 50 100 0 1 0.1 255 200 190 Exemples de relations (c.-à-d. de données multidimensionnelles)
Données multidimensionnelles Ce que j’entends par « données multidimensionelles » est une relation quelconque On peut distinguer entre trois sortes de « dimensions » dans ces données: 1. Les dimensions associées avec le domaine (ou variables indépendantes) 2. Les dimensions associées avec le codomaine (ou variables dépendantes) 3. Les dimensions physiques de l’espace et/ou de temps utilisés pour visualiser les données (il y a au plus 3 dimensions spatiales et 1 dimension temporelle) Exemple: dans du piétage vidéo, il y a 3 dimensions (x,y, et temps) associées avec le domaine, 3 dimensions associées avec le codomaine (rouge, vert, bleu), et habituellement pour visualiser la vidéo on va « mapper » x et y dans la vidéo aux dimensions spatiales physiques de notre écran, et « mapper » le temps dans la vidéo au temps physique. Mais, on pourrait aussi « mapper » les variables rouge, vert, bleu au x, y, z physique, pour donner une nuage de points (« scatter plot ») de la vidéo
Une vidéo Bleu Rouge Vert
Gareth Daniel et Min Chen, 2003
Hilpoltsteiner 2005 http://www. recreating-movement. com/index
Les videograms (Marc Davis 1995)
Visualisation de fluide
Visualisation de musique (Martin Wattenberg, 2001) Beethoven, Clair de lune Talking Heads, As She Was
Les visages de Chernoff (1973) (un exemple d’un « glyph ») http://mapmaker.rutgers.edu/355/Chernoff_face.gif http://kspark.kaist.ac.kr/Human%20Engineering.files/Chernoff/life_in_LA.jpg
Présentation interactive de l’ONU (United Nations Development Programme, Human Development Report)
Dynamic Queries: HomeFinder (Ben Shneiderman, 1993)
Dynamic Queries: FildFinder (Ben Shneiderman)
Dynamic Queries: TimeSearcher (Hochheiser et Shneiderman 2004)
Hiéarchie des variables graphiques
Sortes de dimensions Quantitatives (ou continues ou métriques) Exemple: x, y, temps, température Ordinales On peut mettre les valeurs en ordre, mais on ne peut pas dire qu’une telle valeur est N fois plus grande qu’une autre valeur Exemple: nom de client (en ordre alphabétique) Exemple: D.E.S., D.E.C., Baccalauréat (en ordre d’années de scolarité) Nominales (ou catégoriques) Il n’y a pas d’ordre naturel Exemple: groupe d’aliments (viandes, lait, légumes et fruits, produits céréaliers) Exemple: bacc en génie mécanique, bacc en génie de construction, etc.
Hiéarchie des variables graphiques (Mackinlay 1986)
Tableau: logiciel pour visualiser des bases de données (Mackinlay et al. 2007, tableausoftware.com) http://www.tableausoftware.com/products/tour Longer video: http://www.tableausoftware.com/products/desktop/demo
Columns: a, x Rows: b, y b y y x x y y x x a
Tableau Détermine de façon automatique quelles colonnes dans la base de données sont des « dimensions » (variables indépendantes) et quelles sont des « mesures » (variables dépendantes) Choisit une sorte de graphique de façon automatique, selon la nature des données
Tableau Pour plus d’informations: http://www.tableausoftware.com/products/tour http://www.tableausoftware.com/products/desktop/demo
Question: Dans le survol historique au début des diapos, est-ce que les données visualisées sont toutes des données multidimensionelles ? Réponse: oui
Les graphes / réseaux (y compris les arborescences)
Visualisation de liens sur l’internet Munzner et al., 1996
Structure de l’ONU Tiré de New Internationalist issue 375 2005 Jan/Feb http://www.newint.org
Ishkur’s Guide to Electronic Music
Ishkur’s Guide to Electronic Music
Regroupements hiéarchiques des liens dans un graphe (Danny Holten, 2006)
H3 (Munzner 1998) On calcul la disposition d’un graphe dans un espace hyperbolique 3D, ensuite on calcul une projection vers un espace euclidien 3D (voir vidéo)
Un graphe: en diagramme nœud-lien, et en matrice d’adjacence B C D E 1 A B C D E Remarque: la matrice est symétrique, car le graphe n’est pas orienté
Diagramme nœud-lien vs matrice d’adjacence Talk about pros and cons of each. Matrix requires an ordering to be computed, but eliminates all edge crossings. Following paths in matrix is difficult. Image taken from http://www.lri.fr/~nhenry/docs/Henry-InfovisTalk2006.pdf (MatrixExplorer)
MatLink (Nathalie Henry et Jean-Daniel Fekete 2007)
Les arborescences
Les arborescences
Les arborescences
Les arborescences
Les arborescences http://www.cookingforengineers.com/2004/09/recipe-file-basic-tiramisu.html
Filelight http://www.methylblue.com/filelight/
http://www.topicscape.com/
Treemaps (Ben Shneiderman et autres) Marc Smith et Andrew Fiore, 2001 Martin Wattenberg, 1998 et http://www.smartmoney.com/marketmap/
Treemap dans Konqueror http://www. dgp. toronto
Treemaps (Shneiderman 1992; http://www. cs. umd Un Treemap « slice-and-dice » (algorithme original, produit beaucoup de rectangles longs et minces):
Treemaps Un Treemap « squarified » (algorithme glouton, temps linéaire, améliore la proportion (« aspect ratios ») des noeuds):
« Squarified Treemaps » « Icicle diagrams » (diagrammes à glaçons) Aire de chaque feuille proportionnelle à la superficie de l’île Aire de chaque feuille égale
Question: Est-il possible d’avoir des données à la fois multidimensionnelles et ayant la structure d’un graphe ? Réponse: oui. Exemple: un ensemble de tableaux dans une base de données relationnelle, liés par des clés étrangères.
Quelques questions de conception et de recherche, et des possibilités pour l’avenir
Comment montrer plus d’informations sur l’écran …
Vue en oeil de poisson ("fisheye")
Le zooming et les ZUIs (« Zooming User Interfaces ») …
Le zooming : Seadragon (Vidéo: présentation de Blaise Aguera y Arcas à TED 2007 http://www.ted.com/index.php/talks/blaise_aguera_y_arcas_demos_photosynth.html )
L’animation pour montrer des transitions fluides …
Les animations entre les vues: Jeff Heer et George Robertson, 2007
Des techniques d’interaction rapide …
Techniques d’interaction: Michael McGuffin et Ravin Balakrishnan, 2005
Le 3D…
Visualisation en 3D : une arborescence Est-ce vraiment mieux de visualiser des graphes en 3D qu’en 2D ? Ça implique souvent une navigation et une interface plus compliqué, et des problèmes d’occlusion. (Par contre, avec les données multidimensionnelles qui ont 3 dimensions spatiales, on a pas vraiment le choix; on doit visualiser en 3D.)
3D + interaction + animations : Christopher Collins et Sheelagh Carpendale, 2007
3D + interaction + animations : Michael McGuffin et al., 2003
3D + interaction + animations : Michael McGuffin et al., 2003
Des visualisations hybrides …
Elastic Hierarchies: un hybride de diagramme nœud-lien et de Treemaps, pour visualiser des arborescences (Zhao, McGuffin, et Chignell 2005)
Elastic Hierarchies: un hybride de diagramme nœud-lien et de Treemaps (Zhao, McGuffin, et Chignell 2005) Taxonomie des hybrides possibles Capture d’écran du prototype logiciel
NodeTrix: un hybride de diagramme nœud-lien et de matrices, pour visualiser des graphes (Henry, McGuffin, et Fekete 2007)
Tendances futures? Des ensembles de données toujours plus grands (exemple: données bioinformatiques) Les utilisateurs vont vouloir regarder leurs données via plusieurs moyens différents, parfois avec plusieurs vues simultanées et coordonnées Plus d’animation Plus de zooming Une interaction rapide (gestuelle, etc.) Le 3D, lorsque c’est approprié (exemple: avec des données multidimensionnelles ayant 3 dimensions spatiales) Travail collaboratif, en équipes, à distance Un grand défit actuel: comment visualiser l’incertitude dans les données Un autre grand défit: comment visualiser des différences entre deux ensembles de données qui sont semblables, et/ou comment visualiser l’évolution d’un ensemble de données à travers le temps (exemples: graphes, code source, etc.)
Quelques entreprises pour lesquelles la visualisation est un aspect important, ou bien leur activité principale Autodesk (Montréal et ailleurs) CAE et PRESAGIS (Montréal et ailleurs) IVS (Montréal) Softimage (Montréal) Oculus (Toronto) Inxight (USA) ILOG (USA / France) Kitware (USA) SpotFire (USA) Tableau Software (USA)