【发布时间】:2018-11-23 07:15:31
【问题描述】:
我在 MATLAB 中创建了以下 Graph
function dummyGraph()
tail = [1 2 3 4 5 6 6 7 8 9 10 10 12 13 14 15];
head = [2 3 4 5 6 7 12 8 9 10 15 11 13 14 15 16];
Graph = graph(tail,head)
plot(Graph)
NodeNumber = 1:16
Neighbor={};
for NodeIdx =NodeNumber
Neighbor{NodeIdx} = neighbors(Graph,NodeIdx);
end
end
我想在两个连续节点之间添加节点。
我正在尝试以下方法
1.获取Graph中存在的所有节点的邻居节点。
2. 在两个连续的邻居之间添加四个新节点。
我可以在代码中实现第一步。我找不到用于在现有节点之间添加节点的 MATLAB 命令。
MATLAB 文档中给出了命令addnode(G,nodeIDs)。但是,我不确定如何使用这个命令来实现我的案例。
我想请教一下如何进行的建议
【问题讨论】:
-
我想澄清在两个连续邻居之间添加四个新节点的含义。是不是说,比如在节点1和2之间添加节点17、18、19、20,在节点2和3之间添加节点21、22、23、24等等?
-
@BanghuaZhao 你说的很对。我想以同样的方式进行。我对在 MATLAB 中执行此任务并不特别感兴趣。有没有其他平台(python?)可以实现这一点?
-
我明白了。不连续但连接的节点号怎么办?比如节点 6 和 12,它们是连通的,但编号不连续。
-
@BanghuaZhao 我也想在 6 到 12 之间添加 4 个新节点。