CommencezCommencez gratuitement

Visualiser les nœuds et arêtes importants

Un problème avec l'ensemble de données sur la rougeole est que trois personnes n'ont aucune information sur qui les a infectées. L'une d'elles (le sommet 184) semble en fin de compte responsable d'avoir propagé la maladie à de nombreuses autres personnes, même si elle n'a pas directement infecté beaucoup d'individus. Cependant, comme le sommet 184 n'a aucune arête entrante dans le réseau, il semble avoir une centralité d'intermédiarité faible. Une façon d'examiner l'importance de ce sommet est de visualiser les distances géodésiques des connexions qui partent de cette personne. Dans cet exercice, vous allez créer un graphique de ces distances à partir de ce patient zéro.

Cette activité fait partie du cours

Analyse de réseaux avec R

Voir le cours

Instructions de l’exercice

  • Utilisez make_ego_graph() pour créer un sous-ensemble du réseau composé des sommets reliés au sommet 184. Le premier argument est le graphe original g. Le deuxième argument est le nombre maximal de connexions qu'un sommet doit avoir pour être relié à notre sommet d'intérêt. Dans ce cas, vous pouvez utiliser diameter() pour retourner la longueur du plus long chemin dans le réseau. Le troisième argument est notre sommet d'intérêt, soit 184. Le dernier argument est le mode. Ici, vous pouvez inclure toutes les connexions, peu importe leur direction.
  • Créez un objet dists qui contient la distance géodésique de chaque sommet par rapport au sommet 184. Utilisez la fonction distances() pour le calculer.
  • Attribuez l'attribut color à chaque sommet. Chaque couleur sera choisie en fonction de sa distance géodésique. La palette de couleurs colors a une longueur égale à la distance géodésique maximale plus un. Ainsi, les sommets à la même distance sont tracés avec la même couleur et le patient zéro possède aussi sa propre couleur.
  • Utilisez plot() pour visualiser le réseau g184. L'étiquette des sommets doit être les distances géodésiques dists.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Make an ego graph
g184 <- ___(g, ___(g), nodes = '184', mode = c("all"))[[1]]

# Get a vector of geodesic distances of all vertices from vertex 184 
dists <- ___(g184, "184")

# Create a color palette of length equal to the maximal geodesic distance plus one.
colors <- c("black", "red", "orange", "blue", "dodgerblue", "cyan")

# Set color attribute to vertices of network g184.
V(___)$color <- colors[dists+1]

# Visualize the network based on geodesic distance from vertex 184 (patient zero).
___(___, 
     vertex.label = ___, 
     vertex.label.color = "white",
     vertex.label.cex = .6,
     edge.color = 'black',
     vertex.size = 7,
     edge.arrow.size = .05,
     main = "Geodesic Distances from Patient Zero"
     )
Modifier et exécuter le code