【こつこつPython】Pythonでステムグラフ(ステムプロット)を作成する方法|matplotlib.pyplot.stem

Pythonでステムグラフを作成する方法です。
使用するのはPythonのmatplotlibライブラリのstem関数です。
ステムグラフは散布図と棒グラフを合わせたようなグラフです。

import matplotlib.pyplot as plt

このようなデータを使用します。

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

まず、stem関数を使用してステムグラフを作成してみましょう。
引数にx座標の値とy座標の値を指定します。
実行します。

plt.stem(x, y)
plt.show()

ステムグラフを作成できました。
ステムグラフは散布図に対して、座標の位置を明確に示したい時に使用されます。

また、線やマーカーのフォーマット、ベースラインの位置を変えることもできます。
まず、線のフォーマットを変えてみましょう。
引数linefmtに":"(コロン)を指定します。
実行します。

plt.stem(x, y, linefmt=":")
plt.show()

実線を点線に変更できました。

次に、マーカーの色を変えてみましょう。
引数markerfmtに色とスタイルを指定します。
matplotlibのカラーサイクルの1番目を指定する"C1"(シーワン)と、逆三角形を指定する"v"(ブイ)を続けて指定します。
実行します。

plt.stem(x, y, linefmt=":", markerfmt="C1v")
plt.show()

マーカーの色とスタイルを変更できました。

最後に、ベースラインの位置を変えてみましょう。
引数bottomにベースラインを引くy座標を指定します。

plt.stem(x, y, linefmt=":", markerfmt="C1v", bottom=2)
plt.show()

ベースラインの位置を変更できました。