Visualisera kanter
I den här övningen får du lära dig hur du ändrar storleken på kanter i ett nätverk baserat på deras vikt, samt hur du tar bort kanter från ett nätverk – något som ibland gör det enklare att visualisera stora och tätt sammankopplade nätverk. I det här inledande kapitlet har vi bara skrapat på ytan av vad som är möjligt när det gäller att visualisera igraph-nätverk. Du kommer att fortsätta utveckla dessa färdigheter i kommande kapitel.
Den här övningen är en del av kursen
Nätverksanalys i R
Övningsinstruktioner
- Skapa en vektor
w1med kantvikter baserade på antalet timmar som vänner tillbringar tillsammans. - Rita nätverket och se till att
edge.widthär inställd på den viktvektor du nyss skapade. Användedge.color = 'black'för att alla kanter ska bli svarta. - Skapa sedan ett nytt grafobjekt
g2som är nätverketg1men med alla kanter som har en vikt på mindre än två timmar borttagna. Detta görs meddelete_edges(), som tar två argument. Det första är grafobjektet och det andra är den delmängd av kanter som ska tas bort. I det här fallet tar du bort alla kanter med ett värde på mindre än två timmar. - Rita slutligen det nya nätverket
g2med lämplig viktvektor för kanterna och rätt layout.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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 = ___)