error graph with EdgeTable
Mostra commenti meno recenti
I would like to plot a graph consistent with the connectivity properties written in 'edge' with a customized width of the edges.
node = [100 -50 -50 -86.6025 0 86.6025;0 86.6025 -86.6025 50 -100 50;0 0 0 200 200 200];
edge = [1 2;2 3;3 1;1 4;2 5;3 6];
type = [1; 1; 1; -1; -1; -1];
EdgeTable = table(edge, ...
'VariableNames','EndNodes');
structure=graph(EdgeTable);
p=plot(structure,'XData', node(1,:), 'YData', node(2,:),'ZData',node(3,:));
p.NodeColor='black';
diameter=20*ones(length(edge),1); % define diameter of struts by using the coefficient
diameter(type>0)=1; % define diameter of cables by using the coefficient
labeledge(p,1:numedges(structure),(1:length(edge)))
p.LineWidth = diameter;
However the result is:

As it can be noted, the grapf doesn.t match the properties of the connectivity as well as the labeledge. Maybe, it happens because the EdgeTable is automatically rewritten by reordering the nodes. Is it right?
How can I fix this problem?
Risposta accettata
Più risposte (0)
Categorie
Scopri di più su Graph and Network Algorithms in Centro assistenza e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!