D3.js:来自邻接矩阵的力向图

Manglano

我有一个存储为CSV文件的邻接矩阵。我想使用D3.js将邻接矩阵可视化为强制定向的无向加权图。矩阵的元素表示节点之间的距离,例如:

AA,A1,A2,A3 A1,0,0.5,1 A2,0.5,0,2 A3,1,2,0

是否有一种简单的方法可以读取邻接矩阵并使用d3生成无向图可视化,还是应该将这些数据转换为更简单的内容(即“源,目标,权重” CSV文件或JSON图规范)?

拉尔斯·科特霍夫(Lars Kotthoff)

假设数据存储在您发布的矩阵中,则将得到如下所示的节点:

var nodes = matrix[0].slice(1);

然后,您可以构建如下链接:

var links = [];
nodes.forEach(function(d, i) {
  matrix[i+1].slice(1).forEach(function(e, j) {
    if(matrix[i+1][j+1] > 0) {
      links.push({source: i, target: j});
    }
  });
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章