MatplotlibとNetworkxを使ってラティス(格子)グラフを描画する方法
Pythonのグラフ描画ライブラリ「Networkx」と可視化ライブラリ「Matplotlib」を組み合わせると、ラティス(格子状)のグラフやネットワーク図を簡単に描画できます。この記事では、2次元格子グラフを作成して表示するまでの手順を解説します。
描画の手順
Networkxを使ってラティスやグラフを描画するには、以下の手順に従います。
- networkx と pyplot をインポートします。
- 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。
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() の引数を変更すれば、任意の行数・列数の格子グラフも簡単に作成できます。


-
Python Matplotlibで3Dグラフをプロットする方法を解説
PythonのMatplotlibを使えば、3次元の散布図やグラフを簡単に描画できます。この記事では、mpl_toolkits.mplot3dモジュールを利用して3Dグラフを作成する手順を、サンプルコード付きでわかりやすく解説します。 3Dグラフをプロットする基本手順 Pythonで3Dグラフを描くには、以下のステップに従います。 figure()メソッドを使って、新しい図(フィギュア)を作成するか、既存の図をアクティブにします。 Axes3Dオブジェクトを取得して、3D用の座標軸を準備します。 x、y、zそれぞれのデータポイントをリストとして定義します。 scatter3D()メソッドを使
-
Matplotlibのグラフをフルスクリーンで表示する方法
Matplotlibで作成したグラフをフルスクリーン(全画面)で表示したい場合、full_screen_toggle()メソッドを使用すると簡単に実現できます。このメソッドは、現在開いているフィギュアウィンドウを全画面モードに切り替える機能を持ちます。 手順 figure()メソッドを使って、新しいフィギュアを作成するか、既存のフィギュアをアクティブにします。 2つのリストを渡してplot()メソッドを呼び出し、折れ線グラフを描画します。 get_current_fig_manager()メソッドで、現在のフィギュアのマネージャー(figure manager)を取得します。 取得したマネー