Matlab实现网络拓补图
顶点号 顶点号 权值 1 2 400 1 3 450 2 4 300 2 8 230 2 9 140 3 4 600 4 5 210 4 19 310 5 6 230 5 7 200 6 7 320 6 8 340 7 8 170 7 18 160 8 9 200 8 15 285 9 10 180 10 11 150 10 15 160 11 12 140 11 14 130 12 13 200 13 14 400 14 15 190 14 16 190 15 16 170 15 17 250 16 17 140 16 18 130 17 20 240 18 19 204 19 20 140
...............
S=NODE(:,1)'; E=NODE(:,2)'; W=NODE(:,3)'; R=sparse(S,E,W); %关联矩阵的稀疏矩阵表示 R(20,20)=0; P=biograph(R,[],'ShowWeights','on'); %建立有向图对象P H=view(P); %显示各个路径权值 [Dist,Path]=graphshortestpath(R,1,20) %求节点1到节点20的最短路径 set(H.Nodes(Path),'Color',[1 0.4 0.4]);%以下三条语句用红色修饰最短路径 edges=getedgesbynodeid(H,get(H.Nodes(Path),'ID')); set(edges,'LineColor',[1 0 0]);
作者:火星十一郎
本文版权归作者火星十一郎所有,欢迎转载和商用,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.