De la création graphique à partir de la matrice de contiguïté dans matlab
J'ai une matrice de contiguïté dans matlab. Comment puis-je dessiner son graphe? Comme je l'ai >500 nœuds, je ne peux pas utiliser gplot aléatoire (ou grille) de coordonnées.
Avez-vous la boîte à outils de la bioinformatique?
Tu veux dire la Biologie Computationnelle?! Oui!
Tu veux dire la Biologie Computationnelle?! Oui!
OriginalL'auteur Mikayel | 2013-10-19
Vous devez vous connecter pour publier un commentaire.
Donc, en supposant que vous avez le boîte à outils de la bioinformatique, le
biograph
fonction est parfait pour ce que vous voulez faire.Voici ce que j'ai fait dans le passé:
Supposons que
from
etto
sont deux vecteurs contenant des informations relatives à de nœuds dans le système. Ensuite, vous pouvez créer votre matrice de contiguïté de cette façon:Je suppose que vous avez déjà votre matrice de contiguïté
adj_mat
, auquel cas tout ce que vous avez à faire est la suivante:J'ai ajouté un peu d'arguments juste pour illustrer certaines possibilités. Je vous le voulez flèches, sauter cette partie.
Les nœuds seront, par défaut, être placés en fonction d'un "minimum d'énergie de la nation", ce qui signifie que le nombre de branche "traversées" est réduit au minimum. La mise en page est possible de modifier, en ajoutant par exemple
'LayoutType','Radial'
.Découvrez la la documentation pour plus d'informations.
Voici un exemple que j'ai créé à l'aide de biograph plus tôt. Il est simple de faire les bords droit, ou attribuer des couleurs différentes et de poids pour les branches. Aussi, vous pouvez créer des noms différents pour les nœuds, ou de supprimer les noms et juste avoir un "point" il y la place.
MODIFIER
Comme une réponse à de Vincent la question dans les commentaires:
J'ai utilisé
set(edges,'LineWidth',1.5)
pour régler le bord de poids. Découvrez quelques documents supplémentaires et des exemples ici.vérifier la mise à jour. Je crois que c'est la partie du code que j'ai utilisé pour créer la figure ci-dessus.
Merci Robert!
consultez également l'exemple de ce lien.
Merci encore! Juste besoin de creuser un peu plus...
OriginalL'auteur Stewie Griffin
Découvrez cette fonction:
gplot
Exemple:
gplot(A,Coordinates)
trace un graphe de nœuds définis en Coordonnées selon le n par n Une matrice de contiguïté, où n est le nombre de nœuds. Coordonnées de n par 2 de la matrice, où n est le nombre de nœuds et de chaque coordonnée de la paire représente un nœud.OriginalL'auteur Franck Dernoncourt