Remove nodes in a graph based on label name instead of index
1 回表示 (過去 30 日間)
古いコメントを表示
I am fairly new to Matlab and trying to modify a network graph.
I want to remove nodes in a graph based on node's label name instead of the node's index. Using the screenshot as an example, I would like to remove node that has name of '12'(underline in blue) instead of node that has an index of 12(underline in red). Is there a way to do so?

I try
G = rmnode(G,G.Nodes.Name=='12')
But get error message: Operate '==' is not supported for operands of type 'cell'.
Thanks for any suggestions.
0 件のコメント
採用された回答
Steven Lord
2022 年 7 月 20 日
B = graph(bucky, string(1:60)); % Use '1' through '60' as names
head(B.Nodes) % Show the first few node names
B2 = rmnode(B, '42');
B2.Nodes(40:45, :) % No node '42' in the modified graph's Nodes table
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Graph and Network Algorithms についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!