2017-07-02 10 views
0

networkxを使用してノードの行境界を取得するにはどうすればよいですか?以下の図を参照してください。私の問題は、白い色のノードによるものです。私は色に関係なくその形を表現したいです。他のノードと比較してノード4を参照してください。python networkxでノードに境界がありません

コード例

import networkx as nx 
import matplotlib.pyplot as plot 

g= {1: [2, 3], 
    2: [2, 3, 4], 
    3: [1, 2], 
    4: [2]} 

graph= nx.Graph() 

for v in g: 
    graph.add_node(v) 

for v in g: 
    for u in g[v]: 
     graph.add_edge(v, u) 

nx.draw_networkx(graph, node_color=['r', 'r', 'r', 'w'], node_shape='o') 

plot.axis('off') 
plot.show() 

出力

enter image description here

+0

https://stackoverflow.com/q/22716161/2966723 [1はnetworkxでノードのアウトラインの色を変更するにはどうすればよい?](の – Joel

+0

可能な重複https://stackoverflow.com/questions/22716161/how-can-one-modify-the-outline-of-a-node-in-networkx) – Joel

答えて

0

私はそれを得ました。

ax= plot.gca() 
ax.collections[0].set_edgecolor("#000000") 

ノードのエッジの色を設定するために上記の行を追加します。

import networkx as nx 
import matplotlib.pyplot as plot 

g= {1: [2, 3], 
    2: [2, 3, 4], 
    3: [1, 2], 
    4: [2]} 

graph= nx.Graph() 

for v in g: 
    graph.add_node(v) 
    for u in g[v]: 
     graph.add_edge(v, u) 

nx.draw_networkx(graph, node_color=['r', 'r', 'r', 'w'], node_shape='o') 

ax= plot.gca() 
ax.collections[0].set_edgecolor("#000000") 

plot.axis('off') 
plot.show() 
関連する問題