Python
 Computer >> コンピューター >  >> プログラミング >> Python

MatplotlibとNetworkxを使ってラティス(格子)グラフを描画する方法

Pythonのグラフ描画ライブラリ「Networkx」と可視化ライブラリ「Matplotlib」を組み合わせると、ラティス(格子状)のグラフやネットワーク図を簡単に描画できます。この記事では、2次元格子グラフを作成して表示するまでの手順を解説します。

描画の手順

Networkxを使ってラティスやグラフを描画するには、以下の手順に従います。

  • networkxpyplot をインポートします。
  • 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。
  • nx.grid_2d_graph(3, 3) を使って、2次元の格子グラフを生成します。この格子グラフでは、各ノードが上下左右の4つの最近接ノードと接続されます。
  • 生成したグラフ G をMatplotlibで描画します。
  • 図を表示するには show() メソッドを使用します。

サンプルコード

# networkx と pyplot をインポート
import networkx as nx
from matplotlib import pyplot as plt

# 図のサイズを設定
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

# グラフを描画
G = nx.grid_2d_graph(3, 3)
nx.draw(G, node_size=100)

plt.show()

実行結果

上記のコードを実行すると、3×3のノードが格子状に配置され、隣接するノード同士が線で結ばれた2次元格子グラフが出力されます。grid_2d_graph() の引数を変更すれば、任意の行数・列数の格子グラフも簡単に作成できます。

MatplotlibとNetworkxを使ってラティス(格子)グラフを描画する方法MatplotlibとNetworkxを使ってラティス(格子)グラフを描画する方法

  1. Python Matplotlibで3Dグラフをプロットする方法を解説

    PythonのMatplotlibを使えば、3次元の散布図やグラフを簡単に描画できます。この記事では、mpl_toolkits.mplot3dモジュールを利用して3Dグラフを作成する手順を、サンプルコード付きでわかりやすく解説します。 3Dグラフをプロットする基本手順 Pythonで3Dグラフを描くには、以下のステップに従います。 figure()メソッドを使って、新しい図(フィギュア)を作成するか、既存の図をアクティブにします。 Axes3Dオブジェクトを取得して、3D用の座標軸を準備します。 x、y、zそれぞれのデータポイントをリストとして定義します。 scatter3D()メソッドを使

  2. Matplotlibのグラフをフルスクリーンで表示する方法

    Matplotlibで作成したグラフをフルスクリーン(全画面)で表示したい場合、full_screen_toggle()メソッドを使用すると簡単に実現できます。このメソッドは、現在開いているフィギュアウィンドウを全画面モードに切り替える機能を持ちます。 手順 figure()メソッドを使って、新しいフィギュアを作成するか、既存のフィギュアをアクティブにします。 2つのリストを渡してplot()メソッドを呼び出し、折れ線グラフを描画します。 get_current_fig_manager()メソッドで、現在のフィギュアのマネージャー(figure manager)を取得します。 取得したマネー