はじめに
この実験では、Python の Matplotlib ライブラリを使って水平棒グラフを作成する方法を学びます。水平棒グラフは、データを水平な棒として表示するグラフです。異なるカテゴリ間のデータを比較するのに便利です。
VM のヒント
VM の起動が完了したら、左上隅をクリックしてノートブックタブに切り替え、Jupyter Notebook を使って練習しましょう。
時々、Jupyter Notebook が読み込み終わるまで数秒待つ必要がある場合があります。Jupyter Notebook の制限により、操作の検証を自動化することはできません。
学習中に問題に遭遇した場合は、Labby にお問い合わせください。セッション後にフィードバックを提供してください。すぐに問題を解決いたします。
必要なライブラリをインポートする
最初のステップは、必要なライブラリをインポートすることです。この実験では、numpy と matplotlib のライブラリを使用します。
import matplotlib.pyplot as plt
import numpy as np
乱数シードを設定する
棒グラフを作成する前に、コードを実行するたびに同じ結果が得られるようにするため、乱数シードを設定する必要があります。
np.random.seed(19680801)
グラフと軸のオブジェクトを作成する
次のステップは、グラフと軸のオブジェクトを作成することです。グラフオブジェクトは、グラフが描画されるウィンドウまたはキャンバスであり、軸オブジェクトは実際のグラフです。
fig, ax = plt.subplots()
データを準備する
このステップでは、グラフ用のデータを準備します。人々の名前、彼らのパフォーマンス、およびエラー率のリストを作成します。
people = ('Tom', 'Dick', 'Harry', 'Slim', 'Jim')
y_pos = np.arange(len(people))
performance = 3 + 10 * np.random.rand(len(people))
error = np.random.rand(len(people))
棒グラフを作成する
最後に、軸オブジェクトの barh() メソッドを使用して水平棒グラフを作成します。
ax.barh(y_pos, performance, xerr=error, align='center')
グラフをカスタマイズする
グラフをより情報豊かにするために、ラベルやタイトルを追加したり、y 軸を反転させたりすることでカスタマイズできます。
ax.set_yticks(y_pos, labels=people)
ax.invert_yaxis() ## labels read top-to-bottom
ax.set_xlabel('Performance')
ax.set_title('How fast do you want to go today?')
グラフを表示する
最後に、pyplot オブジェクトの show() メソッドを呼び出してグラフを表示します。
plt.show()
まとめ
この実験では、Python の Matplotlib を使って水平棒グラフを作成する方法を学びました。データの準備方法、グラフと軸オブジェクトの作成方法、およびグラフのカスタマイズ方法を見ました。また、軸オブジェクトの barh() メソッドと、pyplot オブジェクトの show() メソッドを使ってグラフを表示する方法についても学びました。