Javascript 用于显示直接非循环图(DAG)的JS库

Javascript 用于显示直接非循环图(DAG)的JS库,javascript,graph-layout,Javascript,Graph Layout,我正在尝试制作一个基于浏览器的工具,它可以让您在编程语言和makefile的模块系统中查看依赖关系图 我正在寻找一个可视化框架,为我画 要求是工具包可以 标记节点(和边) 如果我有无穷大的空间(滚动条很好),自动将图形分隔到正确的大小(我不必猜测好的尺寸) 很好地布局图表,使其看起来不那么凌乱 可以使用Dagre非常适合图形布局(水平/垂直对齐、标签等),并且具有D3渲染器 (检查末尾的图像) < P>在商业场景中,你可能要考虑: 关于您的要求,它可以: 向节点和边添加任意数量的标签 提

我正在尝试制作一个基于浏览器的工具,它可以让您在编程语言和makefile的模块系统中查看依赖关系图

我正在寻找一个可视化框架,为我画

要求是工具包可以

  • 标记节点(和边)
  • 如果我有无穷大的空间(滚动条很好),自动将图形分隔到正确的大小(我不必猜测好的尺寸)
  • 很好地布局图表,使其看起来不那么凌乱

  • 可以使用Dagre非常适合图形布局(水平/垂直对齐、标签等),并且具有D3渲染器

    (检查末尾的图像)


    < P>在商业场景中,你可能要考虑:

    关于您的要求,它可以:

    • 向节点和边添加任意数量的标签
    • 提供几乎无限的滚动/平移/缩放区域
    • 使用各种自动布局算法自动布局图形。对于依赖关系图,这个函数非常适合
    • 在具有大量节点的桌面浏览器上运行良好。不过,根据视觉复杂性和图形结构的不同,5000个元素在今天的浏览器实现中可能会比较困难
    • 它是一个纯Javascript库,没有任何依赖关系
    • 使用SVG作为主要后端,但也可以利用画布
    • 这个图书馆很复杂,这是必要的
    下面是一个屏幕截图,显示了上述一些功能的作用-布局是自动计算的:


    免责声明:我为创建该库的公司工作。在SO/SE上,我不代表我的雇主。这是我自己的帖子。

    请问你能找到这个帖子的好答案吗?我也面临同样的问题,d3没有一个良好的图形自动布局。不幸的是,我还没有找到一个好的答案。另请参阅Dagre是否支持节点的可折叠?cytoscape.js也可以使用Dagre布局库。看见