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

【Python】Matplotlibで複素数をプロットする方法(アルガンド図)

Matplotlibを使って複素数を可視化するには、複素数のデータセットを作成し、実部をx軸、虚部をy軸に対応させてプロットするのが一般的です。このように表現した図は「アルガンド図(Argand Diagram)」と呼ばれます。

手順

  • 図のサイズを設定し、サブプロット間および周囲のパディングを調整します。
  • ランダムな複素数データを作成します。
  • subplots()メソッドを使って、図とサブプロットのセットを生成します。
  • scatter()メソッドで各複素数を散布図としてプロットします。
  • show()メソッドを実行して図を表示します。

サンプルコード

import numpy as np
from matplotlib import pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

# 実部・虚部がランダムな複素数を10個生成
data = np.random.rand(10) + 1j * np.random.rand(10)

fig, ax = plt.subplots()
ax.scatter(data.real, data.imag, c=data.real, cmap="RdYlBu_r")

plt.show()

コードの解説

np.random.rand(10) + 1j * np.random.rand(10)により、実部と虚部がそれぞれ0以上1未満の一様乱数となる複素数が10個生成されます。data.realで実部、data.imagで虚部を取り出し、それぞれx座標・y座標として散布図に描画しています。点の色はc=data.realによって実部の値に応じて変化し、カラーマップにはRdYlBu_rを指定することで値の大小が直感的に分かるようになっています。

出力結果

【Python】Matplotlibで複素数をプロットする方法(アルガンド図)

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

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

  2. Matplotlibで円の中に長方形をプロットする方法

    Matplotlibを使って円の中に長方形を描画したい場合、patchesモジュールが提供するRectangle()クラスとCircle()クラスを組み合わせることで簡単に実現できます。以下の手順に従ってください。手順figure()メソッドを使用して、新しい図を作成するか、既存の図をアクティブにします。add_subplot()メソッドで現在の図にサブプロット(軸)を追加します。Rectangle()クラスとCircle()クラスを使って、長方形と円のインスタンスを作成します。add_patch()メソッドで作成したパッチを軸に追加します。xlim()およびylim()メソッドを使用して、x