在java上绘制图形

我想用Java绘制图形(节点和边)。 但是,由于我不知道该怎么做,我想在开始之前先给出一些建议。

我该怎么做?

使用Graphics2D包,对吗?

节点的标签怎么样? 我应该使用drawString之类的东西并手动处理所有“居中”或为此创建一个JLabel吗? 我可以在Graphics2D环境中放置JLabel吗?

我搜索过但没有找到任何简单的实现。 如果您知道其中一个,请在答案中提供链接。

编辑:我正在寻找的解决方案应该能够删除节点,拖动节点,编辑标签,创建节点,所有这些都与鼠标事件。

谢谢。

“ 图形面板是对象绘图程序的一个简单示例。” 这里引用了更复杂的替代方案。

也许这会有所帮助: JUNG 。

您可能需要阅读此内容: http : //jung.sourceforge.net/doc/JUNGVisualizationGuide.html

JGraphT和JGraph是另一种选择。 JGraph用于在GUI中渲染图形并处理用户交互,而JGraphT是底层图形模型,数据结构和算法。

如果您想自己动手, GraphLayout示例将有所帮助。

这是一个很好的例子 ,只有几行代码。

如果你想使用更复杂的框架检查JGraph

有很多选择。 GVSR项目维护一份清单。 您可以将搜索范围限制为仅限Java库 。