February 2024
Intermediate to advanced
576 pages
9h 17m
Japanese
等高線や色分けされた領域を使用して3次元データを2次元で表示すると便利な場合があります。このためにMatplotlibでは3つの関数を提供しています。等高線図用のplt.contour、塗りつぶし等高線図用のplt.contourf、そして画像として表示するplt.imshowです。この章では、これらを使用した例を紹介します。まず、Jupyter Notebookを設定してから、使用する関数をインポートします。
In [1]: %matplotlib inline
import matplotlib.pyplot as plt
plt.style.use('seaborn-white')
import numpy as np
最初の例として、関数z=f(x, y)の等高線図を作成します。関数fは次の関数を使用します(この関数は「8章 配列の計算:ブロードキャスト」で、配列のブロードキャストを説明するのに使用しました)。
In [2]: def f(x, y):
return np.sin(x) ** 10 + np.cos(10 + y * x) * np.cos(x)
等高線図は、plt.contour関数を使用して作成できます。x値のグリッド、y値のグリッド、z値のグリッドの3つの引数を渡します。xとyの値はプロット上の位置を表し、z値は高さを表します。このようなデータを準備するには、1次元配列から2次元グリッドを構築するnp.meshgrid関数を使うのが、おそらく最も簡単な方法です。
In [3]: x = np.linspace(0, 5, 50) y = np.linspace(0, 5, 40) X, ...