問題タブ [networkx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Pythonで関係マトリックスをグラフ化する
私は wxpython を使用した Python インターフェイスを持っています。これにより、ユーザーは行列 (0/1) を入力し、それをグラフ化できます。プログラムは numpy マトリックスを作成し、そのマトリックスから networkx グラフを作成し、matplotlib.pylab を使用してグラフを表示します。
プログラムは推移的、再帰的、および対称クロージャーを取得するなどの他のことも行うため、numpyは必須です... networkxに関しては、行列をグラフ化するためにより良いものをお勧めする場合、別のものを使用できます.matplotlibに関しては嫌いですグラフを表示する他の方法を知っている場合は、アドバイスをお願いします。
ユーザーがグラフボタンをクリックすると、プログラムがマトリックスを読み取り、グラフを作成し、matplotlib がそれを新しいウィンドウに表示します (デフォルト)。ユーザーが最初に matplotlib ウィンドウを閉じずに元のウィンドウに戻って別のマトリックスをグラフ化すると、プログラムがクラッシュします。
また、関係の「矢印」の描き方も、私の意見では魅力的ではありません。
マトリックスをグラフ化するより良い方法が必要です。または、少なくとも myplotlib ウィンドウを強制的に閉じる方法として、plt.close() を試しましたが、うまくいきませんでした。ウィンドウは開いたままになり、両方のウィンドウが表示されます (Not応答しています)、プロセスを終了する必要があります。
これは問題のコードの一部です:
... ... ...
python - エッジに基づく 2 つのノード間のすべてのパス
私の問題は、幻覚剤に関するすべての単純な経路の問題です。ノードではなくエッジに基づいて、2 つのノード間のすべてのパスを見つける必要があります。
これを解決策として見つけましたが、実際のグラフのサイズを考えると、このアプローチは遅すぎます。これを改善するために実行できる最適化は何かを知りたいです。リンクで指定されたコードを deque() を使用するように変更しました
これもあまり役に立ちません
python - Python NetworkX を使用してノードの関係を表す
次のように、XMLファイルに約200Kのノードとそれらの関係があります。
node_A - node_B 直接、node_A - node_G 逆、node_A - node_H 直接、node_A - node_X 逆、node_A - node_Y 直接
Python NetworkX グラフ データ構造を使用して XML ファイル内のノードとその関係をモデル化し、ユーザー入力 (例: node_A up) に基づいてノード間の関係を見つけ、次のようにノードを出力する必要があります。
出力: node_B - アップ、node_G - ダウン、node_H - アップ、node_X - ダウン、node_Y - アップ
ここでの意味は、ノードの関係に基づいて、アプリがノードを並べ替え/フィルター処理する必要があるということです。たとえば、node_A から node_B への関係が直接で、node_A から node_X への関係が逆である場合、出力は上記の出力例のように node_B - up および node_X - down になります。
どの NetworkX グラフ データ構造を使用するべきかを教えてください。例は非常に役立ちます。
よろしくお願いします
python - networkx のウォーク エッジのカラーリング
networkx ライブラリを使用して、特定のグラフ G でランダム ウォークを生成する簡単なコードを作成しました。例: 接続エッジからノード 1 からノード 2 に歩いているとします。そのエッジを残りのエッジとは異なる色にしたいとします。コードは次のとおりです。
python - networkxからcytoscapeにレイアウトを転送する
networkxを使用してグラフのレイアウトを生成したいと思います。このレイアウトをcytoscapeに転送してそこに描画することは可能ですか?単純にグラフを書いてみました
しかし、これらはどちらもサイトスケープでは読み取られません。位置を含めることができる形式でグラフを転送する方法がわかりません。
python - networkxのdraw_networkx()
networkxを試してみると、このエラーが発生します
同じためのコードは
誰かが私が間違っていることを説明できますか、そしてこれをどのように修正できますか....関数のリンクはdraw_networkxです。
ありがとう
python - 正しく機能しないエッジに重みを描画するプログラム+networkx
wxフレーム内でmatplotlibを使用して、ノードでラベル付きエッジを描画するこのプログラムがあります。
サイトの例と他の人からの質問を使って組み合わせました。
ただし、ノードとエッジは描画されますが、ウェイトは描画されないため、正しく機能していません。
誰かが私がその理由を見つけるのを手伝ってくれますか...
python - 春のレイアウト+networkxでノードの色を変更する
場所がわからない色のノードを変更するにはどうすればよいですか?
だから私は、ノードの明示的に設定された位置に対して答えが与えられているスタックオーバーフローでこのリンクを見てきました。
しかし、私はこのようなグラフを持っていると言います
しかし、乱数を取得してそれを青に着色し、他の人を赤にするようなものがある場合、関数nodes_list
の属性を使用してどのように実装しますか?'draw_networkx'
これには整数のノードがあります。任意のタイプのノード名の解決策を提供できる場合は、さらに役立ちます。
どうもありがとう..
python - networkx:計算値としてのエッジの重み
NetworkXライブラリを使用して最短経路アルゴリズムを実装したいと思います。私の場合、重み関数は他のエッジ属性から値を導き出します。重みは計算値であるため、他の属性が変更されたときに値を更新するなどの複雑さを避けるために、追加の属性として保存したくありません。ただし、 NetworkXのアルゴリズムAPIでは、エッジデータキーとして重みが必要なようです。
それで、値を保存しないことは可能かどうか疑問に思いましたか?私の理想的なケースは、アルゴリズムにカスタムの重み関数を指定することです。
python - 特定の形式で networkx のノードを配置する
networkx のグラフ G のノード A と B の 2 つのリストがあります。
リストAが左側に、リストBのノードが右側に残るようにノードを描画したいと思います。
このために、ウィンドウのサイズを知り、リスト A のノードのように、ウィンドウの左側にスプリング レイアウトがあり、右側にリスト B があるようにしたいと考えています。
そうする方法はありますか....?