3

如何借助转换矩阵绘制网络的帧序列?我有一个表示图形的矩阵。矩阵随迭代而变化。谁能让我了解我可以使用哪些功能来创建网络系列?

      original=[0.06    0.57    0.37    0       0;
                0.57    0.06    0.37    0       0;
                0.37    0.57    0.03    0.03    0;
                0       0       0.03    0.13    0.84;
                0       0       0       0.84    0.16];

假设上面是有问题的矩阵。那么图形应该是

图片

4

1 回答 1

7

这个问题与这个较早的查询这个有关。但这是针对您的具体情况的答案。

给定一个加权邻接矩阵:

 original =    [0.06    0.57    0.37    0       0;
                0.57    0.06    0.37    0       0;
                0.37    0.57    0.03    0.03    0;
                0       0       0.03    0.13    0.84;
                0       0       0       0.84    0.16];

您可以先定义网络中的节点数:

N = size(original,1);

然后是圆周长上的一组相应坐标:

coords = [cos(2*pi*(1:N)/N); sin(2*pi*(1:N)/N)]';

然后您可以使用以下方法绘制图表gplot

gplot(original, coords)

并使用 标记顶点text

text(coords(:,1) - 0.1, coords(:,2) + 0.1, num2str((1:N)'), 'FontSize', 14)

请注意,该gplot函数不会通过连接强度对线条进行加权;矩阵元素 (i,j) 被视为二进制,表示节点 i 和 j 之间是否存在链接。

于 2013-06-25T23:01:23.293 回答