Télécharger la présentation
Publié parRenard Guilbaud Modifié depuis plus de 10 années
1
Visualisation d’information interactive : Graphes
Jean-Daniel Fekete INRIA Futurs/LRI Projet IN-SITU
2
Représenter un arbre par un arbre (vanWijk Infovis 2001)
3
Définition formelle Un graphe est défini par
Un ensemble de sommets S={si} Un ensemble d’arc ou arêtes A={aj} avec a=(sd,sa) ∈ SxS C’est une application de S dans S On définit des propriétés sur un graphe qui sont à caractère topologique
4
Deux représentations classiques pour les Graphes
Nœuds+Liens Le nœud représente un sommet Le lien représente un arc Matrices d’adjacence Une ligne est un sommet de départ Une colonne est un sommet d’arrivée L’intersection visualise l’existence d’un arc A C D B A B C D X
5
Utilisation des graphes
La modélisation de données par graphes est très (trop) flexible: Le Web, le circuit routier, voies ferrées, Internet, circuit de voyage, modules logiciels, réseaux sociaux (arbres généalogique), etc. Tout peut être modélisé comme un graphe… par toujours bien!
6
Exemples de tâches dans les graphes
Les principales tâches liées à la topologie sont: Nœuds: degré, source (pas de lien entrant), collecteur (pas de lien sortant), isolé, voisins (rayon) Chemins Chemins (plus court, tous), cycles Sous-Graphes Composants connexes, etc. La liste est sans fin et chaque domaine d’application spécifique ajoute des tâches propres
7
Attributs dans les graphes
La structure de graphe ne définit qu’une topologie On peut associer des attributs aux sommets ainsi qu’aux arcs Par exemple un nom, poids, taille, etc. On ajoute de nouveaux attributs calculables topologiquement : Chemin du moindre coût, cycle contraint On ajoute des tâches liées aux attributs Cycle le plus court passant par Paris, Lyon, Marseille et Bordeaux
8
Les représentation Nœud-Lien
9
Chercher l’erreur
10
Problématiques Placement du graphe et des liens Passage à l’échelle
Navigation Attention au plat de spaghettis !
11
Placement selon attributs
Le placement n’est pas toujours un problème Les attributs peuvent permettre le placement
12
Styles de liens Lignes droites Courbes Orthogonaux
13
Contraintes « Esthétiques »
Minimiser les croisement Minimiser la longueur des liens Minimiser les changements de direction Maximiser les symétries … mutuellement contradictoires
14
Critères complexes On veut maximiser la lisibilité et on ne sait pas la définir Symétrie ? Forme connue ?
15
Placement du graphe Contraintes « esthétiques »
Hiérarchisation, clustering Positionnement par valeur d’attribut
16
Placement de graphe 3 méthodes Simple, a-priori
Système à base de forces Analytique Plusieurs méthodes complexes
17
Placement a-priori Circulaire Sur plusieurs cercles concentriques
Avantages Simple et rapide Inconvénients Les liens sont difficiles à suivre Pas ou peu de symétries ou motifs visuels
18
Système de forces ressort (Eades 84)
Les liens se comportent comme des ressorts ayant une longueur naturelle On ajoute des liens faibles infiniment longs entre les nœuds non connexes (répulsifs) On part d’une configuration initiale On laisse le système converger vers un minimum local On ajoute de la friction pour freiner les oscillations
19
Système à base de forces
Améliorations géométriques (Kamada&Kawai 89) Système à particules (Fruchterman Reingold 90) Recuit simulé (Davidson Harel 89) Code C++ dans Graphics Gems
20
Avantages et inconvénients de système à base de forces
Facile à implémenter Améliorations heuristiques faciles à ajouter Evolution continue et stable Extensible à la 3D Fonctionne bien pour les petits graphes ayant une structure régulière Inconvénients Lent O(N2) Pas de résultats théoriques sur la qualité Difficile à étendre
21
Placement analytique de graphe
Plusieurs méthodes compliquées Nécessite: Théorie des graphes Géométrie informatique (Computational geometry) Domaine de recherche à part entière Livres et +de 8000 articles
22
Plusieurs produits GraphViz: dot (analytique), neato (système de forces), twopi(a priori) Vcg (analytique) Tulip (beaucoup) Ilog Graph Components (C++,Java) DaVinci, Tom Sawyer etc. Utilisez-les si vous devez placer des graphes!
23
Les graphes attribués Eick, “SeeNet” Kuljit, Anil
24
Problème d’échelle Les diagrammes nœud-lien deviennent illisibles au-delà de nœuds 3 solutions Changer de représentation Echantillonner Grouper et hiérarchiser (clustering)
27
Clustering pour les graphes
Grouper les sommets similaires et les traiter comme un sous-graphe
28
Clustering pour les graphes
29
Hiérarchisation après clustering
30
Echantillonnage et navigation
31
Echantillonnage et navigation (2)
Keith Andrews
32
Matrices d’adjacence Un diagramme nœud-lien devient vite confus lorsque sa densité ou sa taille augmentent Utilisation de matrices
33
Nœud-lien vs. matrice
34
Nœud-lien vs. matrice
35
Avantages et inconvénients
Placement très rapide Visibilité de tous les liens Permet des permutations de sommets Inconvénients Pas intuitif et parfois difficile à lire Limité à la taille écran (1000x1000) Nécessite des permutations
36
Passage à l’échelle Clustering Hiérarchisation Difficile
Classification automatique Analyse factorielle Analyse hiérarchique Hiérarchisation Facile
37
Hiérarchisation (vanHam Infovis 03)
38
Autres représentations: Liens courbes
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.