[英]My networkx graph is not displaying nodes with zero degree
我使用網絡庫編寫了一個簡單的python程序來顯示圖形。 我使用Graphviz進行可視化。
這是代碼
import networkx as nx
from networkx.drawing.nx_pydot import write_dot
G2 = nx.read_edgelist("test_input.txt",create_using=nx.DiGraph())
write_dot(G2,"test_flow.doc")
diagram = 'print (os.system("D:/graphviz/bin/dot -o ' + output.svg + ' -Tsvg ' + test_flow.doc + '"))'
exec(diagram)
test_input
A
B C
B D
D E
在這種情況下,我的點文件未存儲節點“ A”。
度為0的節點不會顯示。 有人可以幫我嗎?
以下直接來自networkx代碼。 如您所見,該命令只能讀取“路徑”。 包含少於兩個“單詞”的每一行都將被忽略。
從源文件:
for line in lines:
p=line.find(comments)
if p>=0:
line = line[:p]
if not len(line):
continue
# split line, should have 2 or more
s=line.strip().split(delimiter)
if len(s)<2:
continue
u=s.pop(0)
v=s.pop(0)
d=s
該函數實際上在parse_edgelist
。 函數read_edgelist
只是我發布的函數的包裝。
我認為最好的方法是手動分析文件,檢索“單個”節點並將其手動添加到圖形中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.