使用Gephi在AnyLogic中显示图形

Use Gephi to display graphs in AnyLogic

我已经在 AnyLogic 中创建了一个基于代理的模型,并且想要将图形可视化。理想情况下,我想使用 Gephi 之类的东西。

我已经使用 AnyLogic 附带的通用可视化工具来创建圆形布局,但我更希望拥有更有用的东西,例如 Force Atlas 2。

理想情况下,我希望在其中一个视图区域中直接显示图表。有任何想法吗?似乎 AnyLogic 在其预打包组件之外的可视化操作方面受到了极大的限制(尽管它们本身就很庞大)。

不确定 Gephi 是什么,但您可以将任何 Java 库加载到 AnyLogic 中并使用它。 vis 有很多,甚至 3D 图表也是可能的。

所以你不受 AnyLogic 的限制,而是 Java... 这真的不是那么大的限制;-)

(查看有关如何加载 jar 文件的 AnyLogic 帮助)

我同意 Gephi 是处理图形的强大工具,但到目前为止我还没有直接在 AnyLogic 中使用它。 这是我会尝试的方法:

  1. Gephi Toolkit 下载为 Java jar
  2. 将其集成到您的 AnyLogic 项目中:在 Dependencies/Jar 文件和 class 文件夹下的模型属性的项目选项卡中添加下载的 jar 文件
  3. 通过在 Advanced Java / Imports Section 下的 Main 中添加命名空间来将命名空间添加到项目中(这里是示例用于生成图表所需的命名空间):
import org.openide.util.Lookup;
import org.gephi.project.api.Workspace;
import org.gephi.io.importer.api.Container;
import org.gephi.io.generator.plugin.RandomGraph;
import org.gephi.io.importer.api.ImportController;
import org.gephi.io.processor.plugin.DefaultProcessor;
import org.gephi.io.processor.plugin.AppendProcessor;
import org.gephi.io.generator.plugin.DynamicGraph;
  1. 生成图表,如 this example 所述。

唯一困难或不可能的事情可能是将可视化集成到 AnyLogic 中 canvas。但是,您始终可以将 "popup" window 作为 JFrame,如 this example.