我有一个表示有向图的数据 struct ,我想在HTML页面上动态呈现它.这些图通常只有几个 node ,在最上端可能有十个,所以我猜性能不会有什么大问题.理想情况下,我希望能够将其与jQuery挂钩,以便用户可以通过拖动 node 来手动调整布局.
注意:我不是在找制图库.
我有一个表示有向图的数据 struct ,我想在HTML页面上动态呈现它.这些图通常只有几个 node ,在最上端可能有十个,所以我猜性能不会有什么大问题.理想情况下,我希望能够将其与jQuery挂钩,以便用户可以通过拖动 node 来手动调整布局.
注意:我不是在找制图库.
我刚刚把你要找的东西拼凑起来:http://www.graphdracula.net个
它是带有定向图布局的JavaScript、SVG,甚至可以拖动 node .仍然需要一些调整,但完全可用.您可以使用如下JavaScript代码轻松创建 node 和边:
var g = new Graph();
g.addEdge("strawberry", "cherry");
g.addEdge("cherry", "apple");
g.addEdge("id34", "cherry");
我使用了前面提到的Raphael JS库(涂鸦示例),外加一些我在网上找到的基于力的图形布局算法的代码(一切都是开源的,麻省理工学院许可).如果您有任何意见或需要某个功能,我可能会执行它,尽管问!
你可能也想看看其他项目!以下是两个元比较:
SocialCompare有一个广泛的库列表," node /边图"行将过滤图形可视化库.
下面是一个类似项目的列表(这里已经提到了一些):
vis.js支持多种类型的网络/边图,外加时间线和2D/3D图表.自动布局、自动群集、弹性物理引擎、移动友好、键盘导航、分层布局、动画等MIT licensed,由一家专门从事自组织网络研究的荷兰公司开发.
Cytoscape.js-交互式图形分析和可视化,支持移动设备,遵循jQuery惯例.由美国国立卫生研究院资助,@maxkfranz(见his answer below)在几所大学和其他组织的帮助下开发.
The JavaScript InfoVis Toolkit-Jit,一种交互式、多用途的图形绘制和布局框架.例如,见Hyperbolic Tree.由Twitter dataviz architect Nicolas Garcia Belmonte和bought by Sencha于2010年建造.
D3.js功能强大的多功能JS可视化库,Protovis的后继者.请参阅force-directed graph示例和gallery中的其他图形示例.
Plotly's JS visualization library uses D3.js with JS, Python, R, and MATLAB bindings. See a nexworkx example in IPython here, human interaction example here, and JS Embed API.
sigma.js个轻量级但功能强大的绘图库
jsPlumb个用于创建交互式连接图的jQuery插件
Springy-一种力有向图布局算法
Processing.js处理库的Javascript端口,John Resig
JS Graph It-通过直线连接的拖放框.线的最小自动布局.
RaphaelJS's Graffle-通用多用途矢量绘图库的交互式图形示例.RaphaelJS无法自动布局 node ;你还需要另一个图书馆.
JointJS Core-David Durman的MPL许可的开源图表库.它可以用来创建静态图表或完全交互的图表工具和应用程序生成器.在支持SVG的浏览器中工作.核心软件包中不包括的布局算法
mxGraph个以前商业化的HTML5图表库,现在在ApacheV2下可用.0.mxGraph是draw.io中使用的基本库.
GoJS交互式图形绘制和布局库
yFiles for HTML商业图形绘制排版库
KeyLines商业JS网络可视化工具包
ZoomCharts个商用多用途可视化图书馆
Syncfusion JavaScript Diagram用于绘图和可视化的商业图表库.
Cytoscape Web个可嵌入的JS网络浏览器(未计划新功能;Cytoscape.JS成功)
arbor.js个复杂的图形,具有良好的物理性能和视觉效果.2012年5月被遗弃.有几个semi-maintainedfork .
jssvggraph"作为使用SVG对象的Javascript库实现的最简单的力导向图形布局算法".2012年被遗弃.
jsdot客户端图形绘制应用程序.Abandoned in 2011.
Protovis可视化图形工具包(JavaScript).替换为d3.
Moo Wheel互动JS连接和关系表示(2008)
JSViz 2007时代的图形可视化脚本
dagre用于JavaScript的图形布局
Graphviz种复杂的图形可视化语言
基于Flash的Flare幅美观有力的图形绘制
NodeBox Python图形可视化