簡體   English   中英

我的networkx圖未顯示零度的節點

[英]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

graphviz的輸出

在這種情況下,我的點文件未存儲節點“ 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.

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