如何在iPython笔记本中使用d3.js可视化图形?

如何在iPython笔记本中使用d3.js可视化图形?,python,graph,d3.js,networkx,Python,Graph,D3.js,Networkx,我有一个图形,我想使用d3.js可视化。具体来说,我有一个邻接矩阵,如下所示(数据的选择,而不是整个集合): 我希望能够使用一个力定向图来显示我的网络,特别是 我知道如何创建NetworkX图形,但我希望能够在d3.js中尝试这一点,因为我希望以后能够添加节点属性的鼠标悬停显示,我认为使用d3是可能的,但使用matplotlib是不可能的 我尝试过使用d3py,但我甚至无法让基本示例正常工作,我读到NetworkX示例已损坏,回购协议已经有一段时间没有更新了。其他人知道我是否可以尝试其他方法,或

我有一个图形,我想使用d3.js可视化。具体来说,我有一个邻接矩阵,如下所示(数据的选择,而不是整个集合):

我希望能够使用一个力定向图来显示我的网络,特别是

我知道如何创建NetworkX图形,但我希望能够在d3.js中尝试这一点,因为我希望以后能够添加节点属性的鼠标悬停显示,我认为使用d3是可能的,但使用matplotlib是不可能的


我尝试过使用d3py,但我甚至无法让基本示例正常工作,我读到NetworkX示例已损坏,回购协议已经有一段时间没有更新了。其他人知道我是否可以尝试其他方法,或者有人可以为我指出第一步的方向吗?

这里有一个使用d3.js force layout的NetworkX示例:

它只是从networkx写入一个JSON格式的图形对象,d3.js可以在web浏览器中加载该对象以获得交互式图形。这段代码有点花哨,因为它还可以为您完成web浏览器部分


运行它所需的所有代码(包括d3部分)都在存储库中

如果您对另一个JavaScript框架还满意,我们一直在构建。其想法是使用WebGL渲染大型图形(平移/缩放等),并将大部分实时计算(布局、过滤器等)卸载到GPU云。下面有一个API用于控制它,类似于D3。不过,对于大多数应用来说,它更容易,因为它简化了常见的大图操作和分析。

欢迎使用堆栈溢出!通常,链接到工具或库,或者如果可能,链接到上述所有内容。
Node 1    Node 2    Weight
A         B         1.0
A         C         1.0
A         D         1.5
B         D         1.0
...