【问题标题】:how to organize graph nodes to draw using java 2d如何组织图形节点以使用 java 2d 进行绘制
【发布时间】:2011-06-24 02:52:49
【问题描述】:

我创建了一个程序,该程序使用 java awt 在 JFrame 中构建和绘制嵌套循环图(具有无向边)。

问题在于,如果节点的位置没有明确指定,或者是随机创建的,那么图就会变得非常混乱,边交叉,顶点碰撞。

我想实现一种重新定位算法,以更均匀、更干净的方式更好地分布节点。

有人可以帮我吗?

【问题讨论】:

  • 你提到了awt和JFrame?你用的是 AWT 还是 Swing?还是两者都有?
  • 两者。 GUI JFrame 和 AWT 绘制方法

标签: java graph java-2d graph-algorithm


【解决方案1】:

您可能想查看GraphViz,这是一个执行此操作的程序(渲染图表)。它有一个 Java API,所以你可以将它集成到你的程序中,而且它是开源的,所以如果你想自己实现一个解决方案,也许他们的代码可以提供一些灵感(记得检查许可证!)

另外,他们的网站有a list of resources pertaining to graph drawing theory,听起来正是你需要的。

【讨论】:

  • 我确实需要实现,不使用任何库。这是为了上大学。我查看了 graphviz 的代码,没有发现任何有用或易于理解的内容 =/
  • 我在他们的网站上发现了一些更有用的东西——graphviz.org/Theory.php 是关于绘图主题的文章、书籍等的列表。我怀疑这个问题会很重要,祝你好运!
【解决方案2】:

JGraphX 是原生 Java,包括自动布局选项。免责声明 - 我确实为该项目做出了贡献。

【讨论】:

    猜你喜欢
    • 2012-08-13
    • 2013-09-03
    • 1970-01-01
    • 2016-08-12
    • 2011-05-09
    • 2021-07-28
    • 1970-01-01
    • 2021-02-28
    • 1970-01-01
    相关资源
    最近更新 更多