1

我需要在 Java GUI 应用程序中动态绘制(星形)拓扑。通过星形拓扑,我的意思是这样的:

网络拓扑结构
(来源:thebryantadvantage.com

不需要太花哨,但我不想做的太丑陋和粗暴。动态我的意思是拓扑随着时间的推移很少发生变化,但是由于节点的数量非常少,所以完全重绘不会有任何伤害。

我用谷歌搜索了一段时间,但找不到任何有用的东西——也许我只是在谷歌上搜索错误的关键字。我也在使用 JFreeChart,但据我所知,没有包含类似的类。我的一个朋友建议搜索 Java 的思维导图库,但我只能找到完整的应用程序,这有点矫枉过正。

我不敢相信除了弄乱形状、线条等之外别无选择?我目前正在使用 JTree,但我不敢相信没有更好的方法可以做到这一点。

附加信息:我有少量(<10)根节点,可能还有少量叶子(<10)。这是关于虚拟机<->服务器映射的,所以叶子会随着时间的推移改变它们的父级。实时迁移时的一些“动画”会很酷,但第一步不需要。

谢谢,请原谅我错过的任何事情 - 这是我在这里的第一个问题。

4

4 回答 4

2

也许GraphViz会为你工作?

编辑:

好的,那么JGraphT 呢

于 2010-02-23T18:21:49.367 回答
1

我相信 JDK 中的演示之一是动态图形布局(不是 100% 肯定,我已经运行它们多年了)。你可能不需要它的超棒动画,但我敢打赌,代码相当小,而且绝对是独立的。

也许您可以对其进行调整,以使查找布局所采取的步骤不动画;它只显示最终状态。

于 2010-02-23T18:23:58.853 回答
1

这是一个很好的实现StarLayout

于 2010-02-23T20:28:53.677 回答
1

NetBeans 提供了一个不错的图形库(visual library)。例如,maven 插件使用它来绘制所有依赖项

于 2010-02-23T21:45:13.533 回答