###############導入###
グラフ理論で最も重要な考え方の 1 つは、グラフ全体の考え方です。それは「ノード」と呼ばれる「点」で構成されており、それらはすべて「エッジ」によって接続されています。言い換えれば、より多くのリンクがあります。完全なグラフは、コンピューター ネットワーク、ソーシャル ネットワーク、最適化問題の解決など、多くの分野で重要です。
Networkx は、プログラマーやデータ サイエンティストが複雑なグラフを簡単に処理して表示できるようにする強力な Python ツールです。ユーザーは、Networkx の使いやすいインターフェイスと多くの機能を使用して、図を簡単に作成、編集、視覚化、移動できます。そのため、これはグラフ理論の豊かな世界を理解し、それをデータ構造やその他の領域にどのように適用できるかを理解するための重要なツールです。
Networkx は、最もよく知られた 2 つのパッケージ マネージャーを使用して Python に追加できます。それらを構築するために使用されるパッケージは、pip および conda と呼ばれます。とにかく、Networkx を稼働させるために必要なのはこれだけです -
pip の使用 (Windows の場合)
コマンド ライン インターフェイス (Windows のコマンド プロンプト、Mac OS/Linux のターミナルなど) を開きます。
conda の使用 (Mac 用)
Anaconda または Miniconda がインストールされている場合は、ターミナルまたは Anaconda プロンプトを開きます。
インストールを確認するには、「import networkx」と入力して、Networkx を Python 対話型シェルまたはスクリプトに統合します。エラーがなければ、インストールは成功しており、Networkx を使用してさまざまなグラフ関連のタスクとアルゴリズムを調べることができます。
完全なグラフを作成するノードとエッジを追加する
Python コード
リーリーadd_nodes_from() メソッドはノード ラベルのリストをパラメーターとして受け取ります。これにより、複数のノードを一度に追加できます。エッジを含める方法も同様です。 add_edge() メソッドを使用して、ノード 1 と 2 の間のリンクを確立します -
タプルのリスト (各タプルは 2 つのノード間のエッジを表します) を add_edges_from() メソッドに渡して、複数のエッジを一度に追加できます。
Networkx では、重みやラベルなどの追加プロパティを使用してエッジをカスタマイズすることもできます。これは、多くのグラフベースの使用例で役立ちます。
チャートの構造とプロパティを理解するには、全体を視覚化する必要があります。 Networkx は Matplotlib ツールキットと連携して動作し、グラフの視覚化を簡単にします。 Networkx のdraw() メソッドを使用すると、包括的なグラフを作成できます -
グラフィックス情報へのアクセス
Python コード
リーリーDegree() メソッドを使用してノードの次数分布を取得することもできます。これにより、キーとしてノード、値として次数を含む辞書が得られます。
Python コード###アプリ###
完全な図は、すべてがどのようにリンクされているかを示すため、現実の世界で多くの用途があります。また、複雑な関係を理解するための良い方法でもあります。ソーシャル ネットワーク - 小さな社会グループ内の人々がどのように相互に接続されているかを示す完全な図。これは基本的に小さな町や友達のグループで使用されます
交通システム - すべての場所間の明確な接続を備え、完全な図で表示される完全な交通ネットワーク。最適なアプローチを見つけてインフラストラクチャを計画するのに役立ちます
コンピュータ ネットワーク - ネットワーク内のすべてのガジェットは、完全な図で相互に直接通信できます。これらは、データの送信方法とエラーの処理方法を人々が理解するのに役立ちます。
以上がPython で Networkx を使用して完全なグラフを描画するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。