我有一个巨大的 XML 文件(测量近 2GB),格式为 Graphml XML 格式,用于社交图。通过创建新图形时
graph = new GraphMLReader().readGraph("socialgraph.xml");
我得到一个“java.lang.OutOfMemoryError: Java heap space”异常有没有办法在prefuse中逐个节点地读取文件。如果没有,你能推荐一些可以通过 XML 或 SQL 数据库处理如此大尺寸的可视化工具包吗?
我有一个巨大的 XML 文件(测量近 2GB),格式为 Graphml XML 格式,用于社交图。通过创建新图形时
graph = new GraphMLReader().readGraph("socialgraph.xml");
我得到一个“java.lang.OutOfMemoryError: Java heap space”异常有没有办法在prefuse中逐个节点地读取文件。如果没有,你能推荐一些可以通过 XML 或 SQL 数据库处理如此大尺寸的可视化工具包吗?
我建议尝试的第一件事是增加分配给 JVM 的内存量。运行程序时添加此 JVM 参数:
-Xmx4g
有关更多信息,请参阅此相关问题:增加 Java 中的堆大小
如果您仍然有问题并想尝试不同的可视化,我会先尝试gephi。