1. ホーム
  2. python

[解決済み] ヒストグラムに平均線を引く (matplotlib)

2023-05-13 08:45:54

質問

pythonのmatplotlibを使ってヒストグラムを描いていますが、データセットの平均を表す線を点線としてヒストグラムに重ねて描きたいと思います(他の色でもいいかもしれません)。ヒストグラムに重ねて線を引く方法について、何かアイデアはありますか?

plot()コマンドを使用していますが、垂直線を描く方法がわかりません(つまり、Y軸にどのような値を与えるべきでしょうか?

ありがとうございます。

どのように解決するのですか?

この場合 plot または vlines で垂直線を描きますが、Y軸の下から上への垂直線を描くには axvline がおそらく最もシンプルな関数であろう。 以下はその例です。

In [80]: import numpy as np

In [81]: import matplotlib.pyplot as plt

In [82]: np.random.seed(6789)

In [83]: x = np.random.gamma(4, 0.5, 1000)

In [84]: result = plt.hist(x, bins=20, color='c', edgecolor='k', alpha=0.65)

In [85]: plt.axvline(x.mean(), color='k', linestyle='dashed', linewidth=1)
Out[85]: <matplotlib.lines.Line2D at 0x119758828>

結果