Matplotlib で基本的なグラフを描く方法

Matplotlib を使うと、簡単に様々なグラフを描くことができます。

ここでは、最初のグラフとして、下のような簡単なグラフを書いてみましょう。

Matplotlib のインストール

ここでは適当なディレクトリ内に仮想環境 env1 を作成し、その環境内に matplotlib をインストールしてみましょう。

まずは、適当なディレクトリに移動して次のコマンドで仮想環境 env1 に入ります。

python3 -m venv env1
. env1/bin/activate

pipmatplotlib をインストールします。

pip install matplotlib

Matplotlib を使った簡単なグラフの表示

次にエディタで test1.py というファイル内に、次の内容を入力します。(左端は単なる行番号なので、入力する必要はありません)

import matplotlib.pyplot as plt

x = [0, 1, 2, 3, 4,  5]
y = [1, 2, 4, 3, 5, 10]

fig, ax = plt.subplots()
ax.plot(x, y)
ax.grid()
ax.set(xlabel='x', ylabel='y', title='Hello!')
plt.show()

test1.py を保存したら、実行してみましょう。

python3 test1.py

書き間違い等がなければ、新しいウィンドウが開き、次のようなグラフが表示されるはずです。

シンプルなコードですが、簡単に説明していきます。

import matplotlib.pyplot as plt

matplotlib ライブラリの pyplot はグラフを表示するためのインターフェイスとなります。これを plt という名前で取り込んでいます。

ここでは折れ線グラフを描画します。

x = [0, 1, 2, 3, 4,  5]
y = [1, 2, 4, 3, 5, 10]

上のように x, y 座標を指定することで、(x座標, y座標)=(0,1), (1,2), (2,4), ... という点を結ぶ折れ線グラフを描画します。

Python 標準の配列、または NumPy の配列データで座標を渡します。

fig, ax = plt.subplots()
ax.plot(x, y)
ax.grid()
ax.set(xlabel='x', ylabel='y', title='Hello!')
plt.show()

6行目の subplots() 関数でグラフを作成します。この関数は二つのオブジェクトを返します。 ひとつ目は、トップレベルの図を表すFigure オブジェクトである fig。今回はここでは使用しません。

二つ目は、ひとつのグラフを表すAxes オブジェクトである ax です。

axplot() で折れ線グラフであることを指定、 grid() で縦横のグリッドを表示、set() でグラフのタイトル、x 軸、y軸のラベルを指定しています。

最後に、show() を呼ぶことでグラフのウィンドウを表示しています。このウィンドウを閉じるまで show() の呼び出しはブロックされます。

以上で、matplotlib を使った、簡単な折れ線グラフの表示方法を説明しました。

ここまでお読みいただき、誠にありがとうございます。SNS 等でこの記事をシェアしていただけますと、大変励みになります。どうぞよろしくお願いします。

© 2024 Python 入門