Les relations et les réseaux d’Hervé Budes de Guébriant

dimanche 9 juin 2013, par jps29

Je travaille sur les relations d’Hervé Budes de Guébriant, dirigeant de l’Office central de Landerneau, avec le monde politique, l’Eglise, ... J’ai donc commencé à faire un petit réseau que je complète au fur et à mesure de mes recherches. Bien sur, nous retrouvons Hervé Budes de Guébriant au centre de cette toile qui ne demande qu’à s’étoffer.

Voici comment je rentre mes données :

C’est très simple : deux colonnes dans un tableau (ce pourrait être un fichier au format csv). Dans chaque colonne se faisant face deux personnes qui sont en relation.

J’ai construit un premier graphe en y attribuant des couleurs aux différents milieux pour les distinguer :

J’utilise une deuxième feuille dans mon tableur pour affecter une étiquette à chaque personne. Voici le code :

library("igraph")
library("xlsx")

igraph.options(verbose=TRUE,
              vertex.size=5,
              vertex.label.cex=.8,
              vertex.label.dist=.3,
              vertex.shape="circle")

guebar1<-read.xlsx("GuebriantAretes.xls", sheetIndex=1, as.data.frame=TRUE, header=TRUE)
guebar<-as.matrix(guebar1)
etiquette<-read.xlsx("GuebriantAretes.xls", sheetIndex=2, as.data.frame=TRUE, header=TRUE)

g <- graph.data.frame(guebar,directed=TRUE)

V(g)$Categorie=as.character(etiquette$Categorie[match(V(g)$name,etiquette$Nom)])

V(g)$color=V(g)$Categorie
V(g)$color=gsub("Agrarien","red",V(g)$color)
V(g)$color=gsub("Cléricaux","blue",V(g)$color)
V(g)$color=gsub("Landerneau","green",V(g)$color)
V(g)$color=gsub("PSF","black",V(g)$color)
V(g)$color=gsub("PDP","yellow",V(g)$color)

plot.igraph(g,layout=layout.fruchterman.reingold)

legend("topleft", c("Cléricaux", "Agrariens","Landerneau","PSF","PDP"),
      pch = 19, col = c("blue", "red",
                        "green","black","yellow"))

Je suis tombé sur une possibilité d’examiner le graphe de manière dynamique : http://www.r-bloggers.com/quick-and-simple-d3-network-graphs-from-r/.

J’ai adapté le code :

# Load packages to download d3SimpleNetwork
library(digest)
library(devtools)
library("xlsx")

# On charge les données
RelationsGuebriant<-read.xlsx("GuebriantAretes.xls", sheetIndex=1, as.data.frame=TRUE, header=TRUE)

# Download d3SimpleNetwork
source_gist("5734624")

Source <- RelationsGuebriant$Col1
Target <- RelationsGuebriant$Col2
Donnees <- data.frame(Source, Target)

d3SimpleNetwork(Donnees, height = 800, width = 800)

On lance le script pour obtenir un fichier javascript dans la console de RStudio. Il suffit d’insérer le code dans une page html pour pouvoir accéder au graphe.

Voici une copie écran :

La page de résultat dynamique est ici : http://www.jps29.fr/gueb/ReseauGueb.html

Je n’ai pas réussi à intégrer le code javascript dans une page SPIP. Si quelqu’un connaît la manière, je suis preneur.

Un message, un commentaire ?

modération a priori

Ce forum est modéré a priori : votre contribution n’apparaîtra qu’après avoir été validée par un administrateur du site.

Qui êtes-vous ?
Votre message