Pythonで等高線のグラフを表示する方法です。
使用するのは、Pythonのcontour関数とcontourf関数です。
等高線とは、地図や天気図等でよく用いられている、標高や気圧の高さを表す線のことです。
contour関数では、座標に基づくデータの大小を、等高線で表すことができます。
import numpy as np
import matplotlib.pyplot as plt
まず、numpyのlinspace関数で、x軸とy軸の値を設定します。
そして、meshgrid関数で、x軸とy軸の2次元データを作成します。
次に、等高線に関するデータを用意します。
今回はx軸とy軸の和を、等高線の高さに設定します。
ax = np.linspace(0, 100, 10)
x, y = np.meshgrid(ax,ax)
z = x + y
それでは、contour関数で等高線のグラフを作成してみましょう。
第一引数にx軸、第二引数にy軸、第三引数に等高線の高さを表す式、ここでは変数zを指定します。
実行します。
等高線のグラフを表示することができました。
x軸とy軸それぞれの値が大きくなるにつれ、x+yの値も大きくなっていることが確認できます。
plt.contour(x, y, z)
plt.title('x+y')
plt.xlabel('x')
plt.ylabel('y')
plt.show()
実行結果:
次に、同じグラフをcontourf関数で実行してみましょう。
それぞれの等高線の範囲ごとに、色で塗りつぶされているグラフが作成できました。
plt.contourf(x, y, z)
plt.title('x+y')
plt.xlabel('x')
plt.ylabel('y')
plt.show()
実行結果:
また、colorbar関数で、等高線の色に対するカラーバーを表示できます。
実行します。
カラーバー付きの等高線を表示することができました。
plt.contourf(x, y, z)
plt.colorbar()
plt.title('x+y')
plt.xlabel('x')
plt.ylabel('y')
plt.show()
実行結果:
関連メソッド
【毎日Python】Pythonで折れ線グラフを作成する方法|matplotlib.pyplot.plot
【毎日Python】Pythonで散布図を作成|matplotlib.pyplot.scatter
【毎日Python】Pythonで棒グラフを作成する方法|matplotlib.pyplot.bar
【毎日Python】Pythonでヒストグラムを作成する方法|matplotlib.pyplot.hist
【こつこつPython】Pythonで配列から座標の格子点を作成する方法|numpy.meshgrid