Kom igångKom igång gratis

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

Visa kurs

Övningsinstruktioner

  • Skapa en vektor w1 med 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änd edge.color = 'black' för att alla kanter ska bli svarta.
  • Skapa sedan ett nytt grafobjekt g2 som är nätverket g1 men med alla kanter som har en vikt på mindre än två timmar borttagna. Detta görs med delete_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 g2 med 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 = ___)
Redigera och kör kod