Verbindingen visualiseren
In deze oefening leer je hoe je de dikte van verbindingen in een netwerk aanpast op basis van hun gewicht, en hoe je verbindingen uit een netwerk verwijdert. Dat kan helpen om grote en sterk geclusterde netwerken beter te visualiseren. In dit introductiehoofdstuk heb je nog maar een glimp gezien van wat er mogelijk is met het visualiseren van igraph-netwerken. Je bouwt deze vaardigheden verder uit in de volgende hoofdstukken.
Deze oefening maakt deel uit van de cursus
Netwerkanalyse in R
Oefeninstructies
- Maak een vector
w1met verbindingsgewichten op basis van het aantal uren dat vrienden samen doorbrengen. - Plot het netwerk en zorg dat
edge.widthis ingesteld op de zojuist gemaakte vector met gewichten. Metedge.color = 'black'zorg je ervoor dat alle verbindingen zwart zijn. - Maak daarna een nieuw graafobject
g2: dit is hetg1-netwerk, maar dan met alle verbindingen waarvan het gewicht minder dan twee uur is verwijderd. Dit doe je metdelete_edges(), dat twee argumenten verwacht: eerst het graafobject en daarna de subset van verbindingen die verwijderd moeten worden. In dit geval verwijder je alle verbindingen met een waarde van minder dan twee uur. - Plot tot slot het nieuwe netwerk
g2met de juiste vector van verbindingsdiktes en dezelfde lay-out.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
library(igraph)
# Create a vector of weights based on the number of hours each pair spend together
w1 <- E(g1)$___
# Plot the network varying edges by weights
m1 <- layout_nicely(g1)
plot(g1,
vertex.label.color = "black",
edge.color = 'black',
edge.width = ___,
layout = m1)
# Create a new igraph object by deleting edges that are less than 2 hours long
g2 <- delete_edges(g1, E(g1)[___ < ___])
# Plot the new graph
w2 <- E(g2)$hours
m2 <- layout_nicely(g2)
plot(g2,
vertex.label.color = "black",
edge.color = 'black',
edge.width = ___,
layout = ___)