Matplotlib を使った指数関数的減衰のプロットと対数スケール

Beginner

This tutorial is from open-source community. Access the source code

はじめに

このチュートリアルでは、Python の Matplotlib のmatplotlib.axes.Axes.semilogxを使って x 軸に対数スケールを割り当てる方法を説明します。対数スケールは、プロットしたいデータが何桁にも及ぶ場合に便利です。このチュートリアルでは、時間の関数としての指数関数的減衰をプロットする例を使います。

VM のヒント

VM の起動が完了したら、左上隅をクリックしてノートブックタブに切り替え、Jupyter Notebook を使って練習しましょう。

時々、Jupyter Notebook が読み込み終わるまで数秒待つ必要があります。Jupyter Notebook の制限により、操作の検証は自動化できません。

学習中に問題に遭遇した場合は、Labby にお問い合わせください。セッション後にフィードバックを提供してください。すぐに問題を解決いたします。

必要なライブラリをインポートする

このチュートリアルでは、numpymatplotlib のライブラリを使用します。

import matplotlib.pyplot as plt
import numpy as np

データを生成する

numpy ライブラリを使って、指数関数的減衰関数 np.exp(-t / 5.0) のデータを生成します。

dt = 0.01
t = np.arange(dt, 20.0, dt)

グラフを作成して x 軸を対数スケールに設定する

subplots() メソッドを使ってグラフと軸のオブジェクトを作成します。その後、semilogx() メソッドを使って指数関数的減衰関数をプロットし、set_xscale() メソッドを使って x 軸を対数スケールに設定します。また、grid() メソッドを使ってグラフにグリッドを追加します。

fig, ax = plt.subplots()

ax.semilogx(t, np.exp(-t / 5.0))
ax.set_xscale('log')
ax.grid()

グラフを表示する

グラフを表示するには show() メソッドを使用します。

plt.show()

まとめ

このチュートリアルでは、matplotlib.axes.Axes.semilogx メソッドを使って x 軸に対数スケールを割り当てる方法を学びました。また、指数関数的減衰関数のデータを生成し、グラフにグリッドを追加する方法も学びました。