java - Jython 图形库

标签 java python graph jython networkx

我需要在一个项目中使用Python和Java,其中图(带有节点和边的那种)起着重要作用。我想在一个简单的 GUI 中可视化这些图表,并每秒更新其节点标签/边权重/任何内容。我还想从 graphml 形式的文件加载图表。

很多人都建议使用 Networkx,但似乎不适用于 Jython,这是正确的吗?如果没有,我会得到一个

语法错误:“import *”不允许与“from .”一起使用

来自 Networkx Egg 内部的错误。即使它有效,我也需要 Numpy 和 matplotlib 才能工作,而且我不确定它们是否适用于 Jython。

首先,您能帮我解决这些 NetworkX 问题吗?其次,您是否可以为我的目的推荐 Networkx 的替代方案?

最佳答案

Jython 是 JVM 内部的 Python 语言规范,很像 JRuby。

NetworkX 源代码是 C 或 fortran(不记得是哪一个)。 Numpy/Scipy 是基于 C 的(用于科学计算的优秀软件包)。 Matplotlib 是 c(用于显示图形)。

NetworkX 将帮助创建图形,matplotlib 将帮助显示它们,但两者可能都无法在 Jython 中工作。

如果您需要基于 C 的资源,请尝试 jpype;它较旧(python 2.7),但允许使用 JNI(java native 接口(interface))在 c 和 java 之间实现某些功能。

我所做的是在 python 中创建图表,然后切换到 Gephi 来可视化和显示图表。 Gephi 是基于 Java 的,是一个新兴的免费工具。

关于java - Jython 图形库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16159985/

相关文章:

java - ISO 8601 日期时间现在

java - 如何设计业务流程层

python - 如何在具有2个版本的python的计算机上设置已安装模块的路径

c++ - 均匀直方图和非均匀直方图有什么区别?

java - 为什么我在 Linux 中使用 ExecutorService 读取线程流时得到 "java.io.IOException: Stream closed"?

java - libc.so 中的 SIGSEGV 上 busybox 上的 Openjdk 11 崩溃

python - 加速一个计算巨大数组中邻居平均值的程序

python - 尝试加载时引发导入错误 'blog.templatetags.blog_tags' : No module named 'markdown

c++ - Boost Graph获取相邻顶点

r - 彩色图同构 : 1(red)->2(blue) vs 1(blue)->2(red)