Bonjour,
j'arrive à importer une matrice d'incidence "normale" avec le code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
# Chargement fichier ASCII dans un tableau (MyTable)
MyTable<-read.delim(file="c:/FichierTexte.txt",sep="\t", header=FALSE);
 
# Chargement d'un objet réseau (net.mat) avec le tableau
net.mat<-as.network(as.matrix(MyTable),vertex.attr=NULL, vertex.attrnames=NULL, directed=TRUE,hyper=FALSE, loops=FALSE, multiple=FALSE, bipartite = FALSE,matrix.type="edgelist")
A partir d'un fichier de données brutes sans en-têtes, à autant de lignes que de sommets du graphe et à 2 colonnes, une qui contient la liste des sommets de départ, l'autre les sommets d'arrivée.

j'utilise enfin la fonction gplot pour afficher le graphe.
Tout fonctionne très bien.



Je souhaiterais maintenant pouvoir mettre les arêtes d'une certaine couleur (avec l'option edge.col) en fonction d'une valeur que je chargerais dans le graphe.

J'ai donc un fichier maintenant à 3 colonnes, les deux premières sont les mêmes que précédemment et la troisième indiquerait la couleur.

J'essaie de convertir la matrice en réseau avec la commande suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
net.mat<-as.network(as.matrix(MyTable),names.eval="V1 V2",vertex.attr=NULL, vertex.attrnames=NULL, directed=TRUE,hyper=FALSE, loops=FALSE, multiple=FALSE, bipartite = FALSE,matrix.type="edgelist")
mais j'obtiens l'erreur :

Erreur dans round(n) : Argument non numérique pour une fonction mathématique
Je n'arrive pas à trouver comment indiquer que les premières colonnes sont les noms des sommets qui composent l'arête et la troisième colonne un attribut supplémentaire des arêtes.

Quelqu'un sait-il comment on pourrait faire ?

Merci.