Effacer les filtres
Effacer les filtres

Specifying node numbers using digraph

2 vues (au cours des 30 derniers jours)
Conrado Neto
Conrado Neto le 20 Jan 2021
Commenté : Conrado Neto le 21 Jan 2021
I need to plot something that has nodes Numbers and Coordinates as in the attached file: Data_Coord.txt
the file has four columns and they correspond to: NodeNumber CoordX CoordY CoordZ, respectively
The conectivity between nodes is given by the file Data_Conec.txt
the file has three columns and they correspond to: ElementNumber Node1 Node2, respectively
Note that the number of the nodes is not sequential up to the total number of nodes, meaning that, for example, I could have node 1 conected to node 10001, even though I only have 200 nodes. but the coordinate of node 1 and 10001 is given on the Data_Coord.txt file and the first column specifies the number of the node.
How can I plot this 3D sketch?
I tried using digraph but because of the node numbers I wasnt sure how to proceed
thanks,

Réponse acceptée

Christine Tobler
Christine Tobler le 20 Jan 2021
The easiest way to use graph/digraph when your node numbers are not sequential is to convert the node numbers to string, which will have them treated as node names instead. Then, you should be able to use digraph and hte plot command with 'XData', 'YData', and 'ZData' options.
  3 commentaires
Christine Tobler
Christine Tobler le 20 Jan 2021
Modifié(e) : Christine Tobler le 20 Jan 2021
Hi Conrado,
If E1, E2 are the second and third column of Data_Conec.txt, and Node_Coord is the first column of Data_Coord.txt, use
G = digraph(string(E1), string(E2), [], string(Node_Coord));
plot(G,'XData',X_Coord,'YData',Y_Coord,'ZData',Z_Coord,...
'ArrowSize',10,'NodeLabel',G.Nodes.Name);
Conrado Neto
Conrado Neto le 21 Jan 2021
this works perfectly, thanks Christine!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Networks dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by