Un'altra opzione è il pacchetto statnet. Statnet ha funzioni per tutte le misure comunemente utilizzate in SNA e può anche stimare i modelli ERG. Se hai i tuoi dati in un elenco di bordi, leggi i dati come segue (supponendo che il tuo frame di dati sia etichettato "edgelist"):
net <- as.network(edgelist, matrix.type = "edgelist", directed = TRUE) #if the network is directed, otherwise: directed = FALSE
Se i tuoi dati sono in una matrice di adiacenza, sostituisci l'argomento matrix.type con "adiacenza":
net <- as.network(edgelist, matrix.type = "adjacency", directed = TRUE)
Il pacchetto statnet ha alcune ottime funzionalità di stampa. Per fare una semplice trama è sufficiente digitare:
gplot(net)
Per ridimensionare i nodi in base alla loro centralità intermedia, è sufficiente:
bet <- betweenness(net)
gplot(net, vertex.cex = bet)
Per impostazione predefinita, la funzione gplot utilizza l'algoritmo Fruchterman-Reingold per posizionare i nodi, tuttavia questo può essere controllato dall'opzione mode, ad esempio per utilizzare MDS per il posizionamento del tipo di nodi:
gplot(net, vertex.cex, mode = "mds")
o per utilizzare un layout circolare:
gplot(net, vertex.cex, mode = "circle")
Ci sono molte più possibilità e questa guida copre la maggior parte delle opzioni di base. Per un esempio autonomo:
net <- rgraph(20) #generate a random network with 20 nodes
bet <- betweenness(net) #calculate betweenness scores
gplot(net) #a simple plot
gplot(net, vertex.cex = bet/3) #nodes scaled according to their betweenness centrality, the measure is divided by 3 so the nodes don't become to big.
gplot(net, vertex.cex = bet/3, mode = "circle") #with a circle layout
gplot(net, vertex.cex = bet/3, mode = "circle", label = 1:20) #with node labels