[matplotlib] 1.matplotlibで横軸日付の棒グラフ

matplotlib
スポンサーリンク

pythonのmatplotlibを使って横軸日付の棒グラフを作成する

データはchromeの恐竜ゲームのスコア。
Chromeでchrome://dinoにアクセスすればオンラインでも遊べます。

DateScore
2018-09-236418
2018-09-2416065
2018-09-255201
2018-09-268995
2018-09-2722515
2018-09-288436
2018-09-2913638

コード

でできる図。

恐竜ゲームのScore(9/23〜9/29)

pandasで読み込み

data = pd.read_table('Data/data_2018_0923_0929.tsv', parse_dates=[0])

pd.read_table: タブ区切りのテキストを読み込む
parse_dates: datetime型で読み込む

データの抽出

Date = data["Date"].values
Score = data['Score'].values

.values で内部データのみをとりだす。

figureとaxes

fig = plt.figure(figsize=(6, 4))
ax = fig.add_subplot(111)

figure は図全体、ax はその内部の座標軸
figsize =(6,4) は横6インチ、縦4インチの図を作成する意味(1インチ=2.54 cm)
subplot(行数, 列数, プロット番号)なので、111とすると、1行、1列の1個目に図を作成するという意味。

X軸の設定

ax.xaxis.set_major_formatter(mdates.DateFormatter('%m/%d'))

matplotlib.mdates.DateFormatter(): 
()に”%H:%M”といれると、表示形式は “月/日” となる。
“%m/%d %H:%M”とすれば、表示形式は “月/日 時:分” となる。

棒グラフ

ax.bar(Date,Score,color = 'pink',edgecolor="black")

DateがX軸、ScoreがY軸の図ができる。colorは棒の中の色、edgecolorは棒の枠線の色。

図の調整

ax.bar(Date,Score,color = 'pink',edgecolor="black", width=0.8)

widthで棒の幅の調整ができる。width=1で隙間なくなる。

ax1.bar(Date,Score,color = 'pink',edgecolor="black", width=0.8,hatch='*')

hatchを設定することで棒に模様をつけられる。
hatch=’*’で星
hatch=’o’で丸
hatch=’x’で格子模様
hatch=’\\’で斜線
となる。

参考:


version
python 3.6.5
pandas 0.23.4
matplotlib 2.2.3

コメント