visualisation dinformation interactive 5 : graphes jean-daniel fekete inria futurs/lri projet...
TRANSCRIPT
Visualisation d’informationinteractive 5 : Graphes
Jean-Daniel FeketeINRIA Futurs/LRIProjet IN-SITU
Représenter un arbre par un arbre (vanWijk Infovis 2001)
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
• Lorsque qu’on prend en compte l’ordre des sommets dans A, alors le graphe est orienté, sinon il est non-orienté.
• C’est une application de S dans S• On définit des propriétés sur un graphe qui sont
à caractère topologique
Propriétés des graphes
• A partir d’un graphe, on peut calculer des propriétés:• Degré (entrant/sortant) d’un sommet• Distance entre des sommets (nombre de liens
min qui les sépare)• Composantes (fortement/faiblement) connexes• Diamètre du graphe• Centralité d’un nœud• Densité du graphe
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
AC
B D
A B C D
A X X X
B X
C X
D
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!
Exemples de tâchesdans les graphes
• Les principales tâches liées à la topologie sont:• Nœuds: degré, isolé (degré=0), source (pas de
lien entrant), collecteur (pas de lien sortant), voisins
• 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
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 (on parle alors de réseau)• 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
Les représentation Nœud-Lien
Chercher l’erreur
Problématiques
• Placement du graphe• Passage à l’échelle• Navigation
• Attention au plat de spaghettis !
Styles de liens
• Lignes droites
• Courbes
• Orthogonaux
Contraintes « Esthétiques »
• Minimiser les croisement• Minimiser la longueur des liens• Minimiser les changements de
direction• Maximiser les symétries• … mutuellement contradictoires
Critères complexes
• On veut maximiser la lisibilité et on ne sait pas la définir• Symétrie ?• Forme connue ?
Placement du graphe
• Trouver, pour chaque sommet, un position X,Y qui optimise une fonction « objectif »• plongement de la topologie dans un espace
métrique
• Contraintes « esthétiques »
• Hiérarchisation, clustering• Positionnement pas valeur d’attribut
Méthodes de placement
• Cinq grandes familles• 1) Placement a priori• 2) Placement par forces• 3) Placement algorithmique• 4) Placement par contraintes• 5) Placements ad-hoc
Placement a priori
• On dispose d’attributs de placement (réseau téléphonique)
• On place autour d’un ou plusieurs cercles concentriques
• Occlusion des liens, peut-on optimiser?
Placement par force
• Utiliser un modèle physique d’attraction/répulsion pour placer le graphe• Proposé dans Eades84
• Les sommets sont des masses et les arêtes sont des ressorts• Longueur naturelle• Rigidité k
• On place les nœuds aléatoirement
• On lâche• On ajoute de la friction• On attend que le système
se stabilise
Placement par force (2)
• Algorithme:• Initialiser les noeuds
• Position aléatoire, force nulle
• Tant Que l’énérgie potentielle > epsilon• Appliquer à chaque nœud une force de répulsion
proportionnelle à la distance de chaque autre nœud• Appliquer à chaque nœud la force d’attraction de ses
ressorts• Déplacer les nœuds suivant la force qui leur est
appliqué et de la friction
• Fin Tant Que
Placement par force (3)
• Avantages:• Simple à implémenter• Facile d’optimiser avec des heuristiques• Évolution continue, animable et incrémentale• Extensible à la 3D• Fait apparaître les symétries• Fonctionne bien pour les petits graphes
• Inconvénients:• Long (quadratique) mais s’optimise
Placement par force (4)
• Autres méthodes• [Kamada Kawai 89] Distance géométrique
= distance dans le graphe• [Fruchterman Reingold 90] corps célestes• [Davidson Harel 89] prise en compte de la
densité locale et méthode de recuit simulé• [Hall 70] Méthode spectrale
Matrices d’adjacence
Liens courbes