Matplotlib の基礎:線グラフの作成

Beginner

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

はじめに

Matplotlib は、Python における人気のあるデータ可視化ライブラリです。これは、単純な折れ線グラフから複雑なヒートマップまで、幅広い種類の可視化を作成するための使いやすいインターフェイスを提供します。この実験では、Matplotlib の基本を学び、「fivethirtyeight」のスタイルシートを使用して単純な折れ線グラフを作成します。

VM のヒント

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

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

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

Matplotlib と NumPy ライブラリのインポート

最初のステップは、Matplotlib と NumPy ライブラリをインポートすることです。NumPy は、Python における科学的計算のための基本パッケージであり、強力な配列と線形代数関数を提供します。

import matplotlib.pyplot as plt
import numpy as np

スタイルを「fivethirtyeight」に設定する

「fivethirtyeight」のスタイルシートは、人気のデータ駆動型のニュースサイト FiveThirtyEight.com のスタイルを再現します。このスタイルシートを使って可視化を行います。

plt.style.use('fivethirtyeight')

折れ線グラフ用のデータを作成する

このステップでは、折れ線グラフ用のデータを作成します。0 から 10 の間の等間隔の値の配列を作成するために、NumPy のlinspace関数を使用します。また、NumPy のrandom.randn関数を使って、いくらかのランダムノイズを生成します。

x = np.linspace(0, 10)
np.random.seed(19680801)
noise = np.random.randn(50)

グラフと軸のオブジェクトを作成する

次に、Matplotlib のsubplots関数を使って、グラフと軸のオブジェクトを作成します。グラフオブジェクトは全体のグラフを表し、軸オブジェクトはグラフ内の個々のプロットを表します。

fig, ax = plt.subplots()

データをプロットする

このステップでは、Matplotlib のplot関数を使って軸オブジェクト上にデータをプロットします。異なる傾きとランダムノイズを持つ 6 つの異なる線をプロットします。

ax.plot(x, np.sin(x) + x + noise)
ax.plot(x, np.sin(x) + 0.5 * x + noise)
ax.plot(x, np.sin(x) + 2 * x + noise)
ax.plot(x, np.sin(x) - 0.5 * x + noise)
ax.plot(x, np.sin(x) - 2 * x + noise)
ax.plot(x, np.sin(x) + noise)

タイトルとラベルを設定する

このステップでは、軸オブジェクトのset_titleset_xlabel、およびset_ylabelメソッドを使用して、プロットのタイトルとラベルを設定します。

ax.set_title("'fivethirtyeight' style sheet")
ax.set_xlabel("x")
ax.set_ylabel("y")

グラフを表示する

最後に、Matplotlib のshow関数を使ってグラフを表示します。

plt.show()

まとめ

この実験では、Matplotlib の「fivethirtyeight」スタイルシートを使って簡単な線グラフを作成する方法を学びました。グラフと軸のオブジェクトを作成する基本、データをプロットすること、およびグラフのタイトルとラベルを設定することを扱いました。これらのスキルを使えば、Matplotlib を使って幅広いビジュアライゼーションを作成できます。