【问题标题】:How can I get node coordinates from a graph, using Perl?如何使用 Perl 从图中获取节点坐标?
【发布时间】:2010-04-30 06:15:12
【问题描述】:

好的,我有一个流程图定义(基本上是节点数组和每个节点的边)。 现在我想计算流程中每个任务的坐标, 最好是hierarchycal风格。

我需要像Graph::Easy::Layout 这样的东西 但我不知道如何获取节点坐标:我自己渲染节点,我只想检索框坐标/大小。有什么建议吗?

我需要的是一个即使在 Debian 存储库中也可用的 CPAN 模块。

【问题讨论】:

    标签: perl graph flowchart graph-layout


    【解决方案1】:

    您可以将 tarball 从 CPAN 转换为 Debian 软件包。见What’s the best way to turn CPAN modules into Debian packages?

    在那里你会发现很多很好的建议和链接。甚至还有一些关于为什么以这种方式安装模块可能是个坏主意的讨论。


    更新

    对于带有坐标信息的布局,Graph::Layout::Aesthetic 可能是您的最佳选择。

    CPAN 上的大多数其他包都以某种描述语言(例如 Graphviz DOT、GraphML 或 GDL)生成图形,并依赖其他图形布局库来处理实际的布局任务。具体的例子是 Graphviz 和 aisee。

    从这些库之一中请求节点(顶点)的坐标类似于从 HTML::TreeBuilder 中请求 <P> 标记的坐标。

    在 CPAN 上有一个名为 Graph::Renderer 的包,但它看起来很不完整,所以我犹豫是否推荐它。但它可能可以满足您的需求。

    Graph::Easy::As_svg 实际上是对图表进行布局,因此可以进行修改以满足您的需求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-03
      • 2019-12-08
      • 2017-12-03
      • 2018-02-24
      • 1970-01-01
      • 2017-10-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多