Une autre option est le package statnet. Statnet a des fonctions pour toutes les mesures couramment utilisées dans le SCN et peut également estimer les modèles ERG. Si vous avez vos données dans une liste de périphérie, lisez-les comme suit (en supposant que votre bloc de données est étiqueté "edgelist"):
net <- as.network(edgelist, matrix.type = "edgelist", directed = TRUE) #if the network is directed, otherwise: directed = FALSE
Si vos données sont dans une matrice d'adjacence, vous remplacez l'argument matrix.type par "adjacence":
net <- as.network(edgelist, matrix.type = "adjacency", directed = TRUE)
Le package statnet a de très belles capacités de traçage. Pour faire un tracé simple, tapez simplement:
gplot(net)
Pour mettre les nœuds à l'échelle en fonction de leur centralité d'interdépendance, il suffit de:
bet <- betweenness(net)
gplot(net, vertex.cex = bet)
Par défaut, la fonction gplot utilise l'algorithme Fruchterman-Reingold pour placer les nœuds, mais cela peut être contrôlé à partir de l'option mode, par exemple pour utiliser MDS pour le placement du type de nœuds:
gplot(net, vertex.cex, mode = "mds")
ou pour utiliser une disposition en cercle:
gplot(net, vertex.cex, mode = "circle")
Il existe de nombreuses autres possibilités et ce guide couvre la plupart des options de base. Pour un exemple autonome:
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