簡體   English   中英

在 NetworkX 中打開 json 圖會產生“模塊‘networkx’沒有屬性‘json_graph’”

[英]Open json graph in NetworkX yields “module 'networkx' has no attribute 'json_graph' ”

我有下面的代碼用於導入保存為 JSON 的圖形,它可以在 3 台計算機中的 2 台上完美運行,它們都運行相同的 WinPython v3.6。 在第三台計算機上它返回: AttributeError: module 'networkx' has no attribute 'json_graph'

import json
import networkx as nx

def openJSONDiGraph(filename):
    with open(filename, encoding='utf-8-sig') as f:
    js_graph = json.load(f)
return nx.json_graph.node_link_graph(js_graph, directed=True, multigraph=False)

thisNetwork = openJSONDiGraph(networkFileAddress) 

此代碼已經完美運行了兩年來導入保存為 JSON 的圖形。 它以前也可以在這台計算機上運行,但是最近我不得不重新安裝整個 Python(使用相同的安裝程序),現在它失敗了。

這與這篇文章類似,所以我嘗試包含from networkx.readwrite import json_graph ,但這會返回ImportError: cannot import name 'to_tuple' 讓我覺得我的 NetworkX 安裝或其依賴項有問題。

我使用 pip 卸載並重新安裝了 NetworkX 2.4(其他計算機正在運行 v2.1,但在這里應該沒有區別),問題仍然存在。

這個問題與這個問題非常相似,但那里沒有發布解決方案。

如何修復我的 NetworkX 安裝或更改我的代碼以使其正常工作?

沒有任何其他嘗試,與我的預期相反,從 NetworkX v2.4 降級到 v2.1 解決了這個問題。 我在 v2.4 文檔中沒有看到任何暗示這會有所不同的內容,但顯然 readwrite 模塊中的某些內容發生了變化。

此時我可以刪除該問題,但我認為最好將其留在這里以備后人使用,以防有人在嘗試升級時遇到類似問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM