【毎日Python】Pythonで等高線グラフを作成する方法|matplotlib.pyplot.contour

contour
こつこつPython

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()

実行結果:
graph01

次に、同じグラフをcontourf関数で実行してみましょう。
それぞれの等高線の範囲ごとに、色で塗りつぶされているグラフが作成できました。

plt.contourf(x, y, z)
plt.title('x+y')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

実行結果:
graph02

また、colorbar関数で、等高線の色に対するカラーバーを表示できます。
実行します。
カラーバー付きの等高線を表示することができました。

plt.contourf(x, y, z)
plt.colorbar()
plt.title('x+y')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

実行結果:graph03

関連メソッド

【毎日Python】Pythonで折れ線グラフを作成する方法|matplotlib.pyplot.plot

【毎日Python】Pythonで散布図を作成|matplotlib.pyplot.scatter

【毎日Python】Pythonで棒グラフを作成する方法|matplotlib.pyplot.bar

【毎日Python】Pythonでヒストグラムを作成する方法|matplotlib.pyplot.hist

【こつこつPython】Pythonで配列から座標の格子点を作成する方法|numpy.meshgrid

未経験からはじめるPython学習「キノクエスト」 キノクエスト
  • スキルアップしたいけど何からはじめればよいかわからない…
  • プログラミングスクールに入りたいけど料金が高い…
  • プログラミングを学んでも業務やキャリアに活かせるか不安…

キノクエストは、このような悩みを持つ方にぴったりのプログラミング学習サービスです。
国内最大級のプログラミング学習系YouTubeチャンネル「キノコード」が提供しているから、未経験者にもわかりやすく質の高い学習体験を実感していただけます。

キノクエスト