Java-是否可以绘制基本的力定向无向图(顶点、边)?

Java-是否可以绘制基本的力定向无向图(顶点、边)?,java,graph,drawing,Java,Graph,Drawing,我正在尝试用Java创建一个类,该类将扩展另一个名为Graph的类 graph类的概要如下所示: 图构造函数 相邻(int i,int j) addEdge,removedge方法 addVertex、removeVertex方法 邻域法 NumofEdge方法 平均度法 周长法 我想知道是否有可能使用我创建的graph类在Java中绘制一个非常基本的力定向无向图。我希望我的图表是视觉愉悦 如果是这样的话,有人能给我指出正确的方向吗?你的问题到底是什么?如果您询问您的类是否包含足够的信息以允

我正在尝试用Java创建一个类,该类将扩展另一个名为Graph的类

graph类的概要如下所示:

  • 图构造函数
  • 相邻(int i,int j)
  • addEdge,removedge方法
  • addVertex、removeVertex方法
  • 邻域法
  • NumofEdge方法
  • 平均度法
  • 周长法
我想知道是否有可能使用我创建的graph类在Java中绘制一个非常基本的力定向无向图。我希望我的图表是视觉愉悦


如果是这样的话,有人能给我指出正确的方向吗?

你的问题到底是什么?如果您询问您的类是否包含足够的信息以允许应用基于力的布局,那么答案显然是否定的:您至少需要表示节点的位置^^(例如使用附加的x和y节点属性)

关于算法本身,您是对自己实现它的过程感兴趣,还是只对结果感兴趣:以一种好的方式显示图形?在前一种情况下,您可以先看一看开创性的论文,如()或()。这两篇文章都明确给出了所提出的算法。在后一种情况下,您可以看看现有的实现,它们有很多。对于您来说,最方便的可能是与布局相关的类,因为这个开源软件()本身就是用Java编写的

在任何情况下,您也可以查看与此主题相关的其他SO帖子,例如或