JavaScript网络可视化?

6

我正在寻找一个可视化网络的库。

我只需要添加一些节点(节点上有文本),在它们之间添加边缘(边缘是有方向和文本的)。我不想手动设置任何东西的位置。

我希望API简单易懂:

var node1 = X.addNode(1, "Hello"),
    node2 = X.addNode(2, "World");
X.addEdge(node1, node2, "helloworld");

我已经搜索了几个小时,找到了arborjs、sigma.js、d3.js、JavaScript InfoVis Toolkit等工具,但都不能满足我的需求。

还有其他什么工具可以尝试吗?


相关,如果不是重复的话:https://dev59.com/cWTWa4cB1Zd3GeqPE5dJ和https://stackoverflow.com/questions/8749706/network-diagram-using-javascript - SherlockEinstein
6个回答

9

请查看VivaGraphJS
由 VivaGraphJS 制作的 Amazon 可视化 示例

布局配置示例,使用 WebGL 作为渲染器。


3
我们制作了mxGraph,但请注意它是一款商业库,而不是开源的。我不确定你列出的开源库为什么失败了,但无疑创建图形、设置几何图形和标签都是相当简单的函数调用。

2

sigma.js有什么问题?该库的网站提供了一个非常简单的示例来绘制节点和边:

var sigRoot = document.getElementById('sig');
var sigInst = sigma.init(sigRoot);
sigInst.addNode('hello',{
label: 'Hello',
color: '#ff0000'
}).addNode('world',{
label: 'World !',
color: '#00ff00'
}).addEdge('hello_world','hello','world').draw();

2
我发现这个JavaScript库非常有用。请查看网络示例页面:

visjs


2

0

试用cne-tnetwork。它是一个JavaScript可视化库,用于创建和绘制网络图形。它基于SVG和HTML 5兼容。它在GitHub上公开可用,根据GNU Afferro许可证进行许可。您可以在库的readme中找到如何使用它。它有一个拖动节点的模式。节点之间的链接可以是单向的、双向的,甚至是连接多个元素的“总线”。使用CSS,您可以自定义所有样式(节点、链接、箭头、总线等)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接