グラフの出力方法
基本のグラフ
例えば、「データの分析」で求めたこのようなデータが対象になるが、
そもそもは、このコードがもとになっているので
print(df_data["旅客クラス"].value_counts(sort=False))
これを利用して、
df_count = df_data["旅客クラス"].value_counts(sort=False)
df_count.plot.line()
plt.show()
グラフを画像で保存する場合
df_count = df_data["旅客クラス"].value_counts(sort=False)
df_count.plot.line()
plt.savefig("images/sample_chart.png") # これに変えるだけ
複数の列を対象にしたグラフ
例えば、「データの分析」で求めたこのようなデータが対象になるが、
そもそもは、このコードがもとになっているので
print(df_data.groupby("旅客クラス").mean())
これを利用して、
df_mean = df_data.groupby("旅客クラス").mean()
df_mean.plot.bar(legend=True, # 凡例を表示させる場合はTrue
figsize=(6, 4)) # グラフサイズの指定(大きくすると文字が小さくなる)
plt.show()
生存状況
や兄弟の人数
の様子が見えなくなってしまっているので、
df_mean = df_data.groupby("旅客クラス").mean()
df_mean.plot.bar(legend=False, # 凡例をなくす場合(表示させる場合はTrue)
subplots=True, # 複数のグラフを作成する場合
layout=(3, 2), # グラフのレイアウト(縦の個数, 横の個数)
figsize=(10, 8)) # グラフサイズの指定(大きくすると文字が小さくな
plt.show()
これを実行すると、下のグラフが作成される。
plot()
の他の引数については、こちらのページに詳しく載っている。
散布図
df_data.plot.scatter(x="年齢", y="運賃")
plt.show()
x
(横軸)とy
(縦軸)を指定しなければならないことに注意が必要。
df_data.plot.scatter(x="年齢", y="運賃",
s=100, # マーカーのサイズ
c="darkkhaki", # マーカーの色
alpha=0.2, # 透明度
edgecolors="olive") # マーカーの枠の色
plt.grid() # グリッドを付ける場合
plt.show()
色についてはこちらのページを参考に。スペルミスに気を付けること。
ヒストグラム
df_data.loc[:, "年齢"].hist()
plt.xlabel("年齢") # 横軸のラベル
plt.ylabel("人数") # 縦軸のラベル
plt.title("年齢のヒストグラム") # グラフのタイトル
plt.show()
さらに、性別
ごとの年齢
のヒストグラムを表示させる場合は、
df_data.loc[:, "年齢"].hist(by=df_data.loc[:, "性別"])
plt.show()
axes = df_data.loc[:, "年齢"].hist(by=df_data.loc[:, "性別"])
for ax in axes.reshape(-1):
ax.grid(b=True) # グリッドを表示
ax.set_xlabel("年齢") # 横軸のラベル
ax.set_ylabel("人数") # 縦軸のラベル
ax.set_ylim(0, 120) # 縦軸の目盛りの最小値と最大値の指定
plt.suptitle("性別ごとの年齢のヒストグラム") # グラフ全体のタイトル
plt.subplots_adjust(top=0.88, # グラフ位置の微調整
left=0.12, # グラフ位置の微調整
wspace=0.4) # グラフ間の微調整
plt.show()