前提・実現したいこと
matplotlibのヒストグラム描画をしているのですが、plt.hist()だと中身を表示できず、plt.bar()だとデータを一定幅でまとめられません。
間くらいのちょうどいい処理はないんでしょうか?
・plt.histで中身のデータを取得する
・plt.barhでデータを幅でまとめる
のどちらかができればと思うのですが。。
もし両方用意されていないならどのような処理がキレイでしょうか?
よろしくお願いします。
該当のソースコード
Python
1import matplotlib.pyplot as plt 2 3# データ生成 4data ={0: 0.0876, 1: 0.02, 2: 0.001, 3: 0.1315, 4: 0.21, 5: 0.3988, 6: 0.9821, 7: 0.4587, 8: 0.683, 9: 0.5, 10: 0.4952} 5#こっちだとbins引数でヒストグラムを任意の数でまとめられるが、表示したいデータではなくデータの個数が表示される。 6plt.hist(x=data, bins=5, orientation="horizontal", color="orange") 7plt.show() 8 9#こっちだと、表示したいデータは取得できるが、ヒストグラムをまとめるために引数がない 10plt.barh(list(data.keys()), data.values(), color='g') 11plt.show()
実行環境
Pycharm
【追記】
描画したいグラフのイメージについて
1,現状のplt.hist
2,現状のplt.barh
3,描画したいグラフのイメージ
上記のように、1ではデータの数量が反映されておらず、2の関数ではデータをまとめることができない。
3のように、dict形式のデータを一定幅でまとめたい、というイメージです。
こちらで伝わりますでしょうか?