visualization - 具有基本节点/边缘过滤的交互式 Graphviz 查看器

标签 visualization graphviz interactive viewer

关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。












想改进这个问题?将问题更新为 on-topic对于堆栈溢出。

2年前关闭。




Improve this question




我看过 Graphviz resources page , 和问题 12仍然找不到具体的答案。我的用例是浏览软件组件(例如可安装包)之间的依赖关系,它的一个特殊特征是一些公共(public)节点是许多边缘的目标。例如,几乎每个可执行包都依赖于 libc。

基于该特征,我希望查看器/库具有以下功能:

  • 使用 Graphviz“点”布局算法(不同库中大量的强制布局算法不能为讨论的用例提供良好的布局质量)。
  • 以交互方式禁用/重新启用图中的某个节点(上面的 libc 示例)。
  • 以交互方式禁用/重新启用来自特定节点的所有边缘(例如,libpng 依赖于 libz,但这很明显,并且可以禁用以不使 View 困惑)。
  • 在某个节点处重新根图(显示仅可从该节点到达的节点的子图),然后“缩小”以完成图。

  • 理想情况下,这将是一个 Javascript 库,可以轻松实现更复杂的操作功能。重要的是,如上所述的基本查看行为开箱即用 - 同样,我找不到类似的东西,许多解决方案要么是静态查看器,要么是允许拖动节点的“自由形式编辑器”,但不是足够高级和有用的行为。

    最后,如果不存在这样的解决方案,欢迎提出实现这些功能的最佳框架的建议。

    最佳答案

    我找到了 José Fonseca 的 xdot.py非常酷的基于 Python 和 Cairo 的应用程序,用于查看 Graphviz 文件。它写得很好,UI 也很漂亮,以至于人们可能想知道为什么它的交互支持有点特别,不允许开箱即用的更多可扩展性。我目前正在 https://github.com/pfalcon/xdot.py 上进行黑客攻击

    更新:我将上述功能的概念验证提交为 filters-viewer.py 。以后可能会改名。

    关于visualization - 具有基本节点/边缘过滤的交互式 Graphviz 查看器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14838820/

    相关文章:

    php - GraphViz 安装失败

    javascript - 如何在图像中添加文本,并且用户还可以保存添加文本的图像?

    用于自动生成 cntlm 代理密码的 Bash 脚本

    javascript - 预计算的网络音频 API 时域和频谱图可视化

    词树可视化的 Javascript 实现

    python - 图例在 Bokeh 图中的位置

    graphviz - 我可以在同一个 graphviz 记录中使用不同的字体样式/大小吗?

    graphviz - 对 DOT 中的边进行分组 (Graphviz)

    vim - Vim 窗口中的 Shell 应用程序

    python - 旋转 SQLite 表,像 SQL 一样应该是