2013-08-02 36 views
6

Networkxで正方格子を描きたい。私は次のようなことをしました:Networkxを使った描画格子とグラフ

ただし、出力は空白です。これをどうやって解決するのですか?

また、ポイントを水平方向と垂直方向に矢印で結合したいと考えています。 (i,j) to (i+1,j)から行く矢印の方向は、すでに持っている行列Aのi、j要素の符号に依存するはずです。これを行う方法?

答えて

8

これらは、このnx.grid_2d_graphの明示的なグラフのコンストラクタです:私たちはあなたのエッジ基準を満たす有向グラフにこの無向グラフを変更することができ

G = nx.grid_2d_graph(L,L) 
nx.draw(G,node_size=2000) 
plt.show() 

enter image description here

。一例として、私は原点から離れているエッジを削除しました。あなたは、あなたのニーズに合わせて、これを適応させることができます。

G2 = nx.DiGraph(G) 
for edge in G2.edges(): 
    if edge != tuple(sorted(edge)): 
     G2.remove_edge(*edge) 

nx.draw_spectral(G2,node_size=600,node_color='w') 

enter image description here

関連する問題