【问题标题】:Store networkx graph object存储networkx图形对象
【发布时间】:2020-11-15 23:37:29
【问题描述】:

我用networkX 制作了一个包含大约 5000 个节点的巨大图表。每次执行脚本时,创建此图表大约需要 30 秒。经过这段相对较长的时间后,我可以像shortest_path 等那样运行我的分析。

我的问题是,有没有办法将此图形的对象存储在文件中或类似的东西中,每次我运行我的脚本时,networkX 都会读取该文件并加载我的所有图形?

【问题讨论】:

  • 读入需要这么长时间,因为它正在对数据文件进行大量处理吗?如果是这样,那么仅以 networkx 支持的格式之一保存图形可能会更有效。 networkx.org/documentation/stable//reference/readwrite/…
  • 这需要很长时间,因为每次我都应该创建我的图表。我的节点在数据库中,我选择了所有节点并使用add_node 函数将它们添加到图形中。@Joel

标签: python networkx


【解决方案1】:

您可以使用gpickle 来执行此操作。假设您的图表用G 表示,您可以通过以下方式保存它:

nx.write_gpickle(G,'myGraph.gpickle')

并加载它

G = nx.read_gpickle('myGraph.gpickle')

https://networkx.org/documentation/stable//reference/readwrite/gpickle.html#pickled-graphs

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-29
    • 2014-03-11
    • 2021-05-14
    • 1970-01-01
    • 2014-07-07
    • 2015-09-30
    • 2016-05-02
    相关资源
    最近更新 更多