0
networkxを使用すると、指向性エッジと双方向エッジを持つマルチグラフを作成する方法はありますか?ハイブリッド指向マルチグラフネットワーク
私はグラフの中で違うものを意味するので、双方向のエッジの代わりに2つの指向のエッジを使うことはできません。 networkx.MultiDiGraph()
は方向性エッジのみを示し、networkx.MultiGraph()
は双方向性エッジのみを示します。
networkxを使用すると、指向性エッジと双方向エッジを持つマルチグラフを作成する方法はありますか?ハイブリッド指向マルチグラフネットワーク
私はグラフの中で違うものを意味するので、双方向のエッジの代わりに2つの指向のエッジを使うことはできません。 networkx.MultiDiGraph()
は方向性エッジのみを示し、networkx.MultiGraph()
は双方向性エッジのみを示します。
私は、ノードとラベルを描画し、グラフからエッジを2回、diGraphからエッジを無向きに上書きするか、2つのセットに分割することをお勧めします。
nx.draw_networkx_nodes(G)
nx.draw_networkx_labels(G)
nx.draw_networkx_edges(G) #directed
nx.draw_networkx_edges(H) #undirected
これでうまくいかない場合は、edgewidthで再生して、指示したものを隠蔽し、見たいものを拡大表示することができます。
この時点では、ネットワークのグラフには、方向と非方向のエッジを混在させることはできません。問題のデータと使用するアルゴリズムに応じて、エッジラベルを使用して問題を解決し、エッジタイプを区別する方法があります。 – Aric
さて、確認していただきありがとうございます。私は 'networkx.has_path(Graph、node1、node2)'を使用したいだけです。 – pwnsauce
そして、それはUndirectedマルチグラフを持つことが可能であり、それからディレクテッドサブグラフを作ることができますか? – pwnsauce