我正在使用Matlab的SimBiology工具框生成biograph(只是图表)。
当我试图包含一个连接到自身的节点时,例如:
g = [
0 1 0;
1 0 1;
0 0 1; % This one connects to itself.
]
我收到以下警告信息:
Warning: Self connecting nodes are not allowed, ignoring the diagonal of CM.
由于我的数据集包含一些自连接节点,我想知道这是否是一个可配置的功能。
谢谢!
答案 0 :(得分:2)
不幸的是,传记不能有自连边。如果您的目的仅用于可视化,则可以添加一些带有空标签的节点。以下是小图和两个自连接节点的示例:
cm = [0 1 1 0 0;1 0 0 1 1;1 0 1 0 0;0 0 0 0 1;1 0 1 0 1];
ids = {'M30931','L07625','K03454','M27323','M15390'};
sc = find(diag(cm));
cm = cm-diag(diag(cm));
n = size(cm,1);
m = numel(sc);
cm(n+m,n+m)=0;
cm(sub2ind([n+m,n+m],[sc;(1:m)'+n],[(1:m)'+n;sc]))=1;
ids((1:m)+n) = {' '};
bg = biograph(cm);
for i = 1:numel(bg.Nodes)
bg.Nodes(i).Label = ids{i};
if i>n
bg.Nodes(i).Shape = 'circle';
end
end
view(bg)
HTH 卢西奥