![](/img/trans.png)
[英]How to specify the <key> id when writing GraphML from NetworkX?
[英]NetworkX problem with label and id when reading and writing GML
我有以下示例,我以編程方式創建一個圖形,將其寫入 GML 文件並再次將文件讀入圖形。
我希望能夠使用從文件加載的圖形來代替以編程方式創建的圖形:
import networkx as nx
g = nx.Graph()
g.add_edge(1,4)
nx.write_gml(g, "test.gml")
gg = nx.read_gml("test.gml", label="label")
print(gg.edges(data=True))
test.gml 的內容如下:
graph [
node [
id 0
label "1"
]
node [
id 1
label "4"
]
edge [
source 0
target 1
]
]
python 代碼中的節點 1 和 4 現在由 ID 0 和 1 以及標簽“1”和“4”的兩個節點表示
讀取文件后,我現在必須訪問節點 4,如下所示:
gg['4']
代替
g[4]
對於原始圖。
我當然可以確保在查找節點之前將每個節點都轉換為字符串,但這對於大圖並不實用。
另一種方法是以編程方式創建(又一個)與g
相同但使用 integer 鍵的圖,但這更加麻煩。
我應該怎么辦?
嘗試:
nx.read_gml(fpath, destringizer=int)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.