对于下面给定的矩阵,它如何表示为无向加权图G(V,E,W),其中V是顶点集,E是边集,W是权重集。
4 2 3 1 4
2 2 3 1 4
2 3 3 1 4
1 2 3 1 4
4 2 3 1 5
我试过的源代码:
%table2 is given matrix
bg = biograph(table2,[],'ShowArrows','off','ShowWeights','on');
h = view(bg);
这是为我的矩阵表示无向加权图的正确方法吗?我在相同的2个椎体之间得到2条边。就像这样
我为你建议的代码得到了这个输出
我有2个邻接矩阵。我必须执行以下2个操作:
1.我必须从这两个邻接矩阵中制作2个图表。
2.然后我必须根据图中边的权重来匹配2个图的顶点。
4 2 3 1 4
2 2 3 1 4
2 3 3 1 4
1 2 3 1 4
4 2 3 1 5
4 1 3 2 4
1 1 2 3 4
3 1 3 2 4
2 1 3 2 4
4 1 3 2 5
我的方式是对还是错?请建议我
答案 0 :(得分:5)
要在每个顶点之间只获得一条边,您只需要一个三角矩阵。
如果您尝试这样的事情:
table1 = (table2 + table2') - triu((table2 + table2'))
table1 =
0 0 0 0 0
4 0 0 0 0
5 6 0 0 0
2 3 4 0 0
8 6 7 5 0
bg = biograph(table1,[],'ShowArrows','off','ShowWeights','on');
h = view(bg);
现在我假设您想要从两个边缘总结权重。即从原始矩阵开始,1-2的边缘的重量等于边缘的重量从1> 2 + 2-> 1。