"Pandas"データフレーム内のデータをループしてさまざまなサブプロットにプロットしようとしていますが、間違ったことがわかりません。
ここにはコードがあります:
df2 = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list("ABCD"))
fig, axes = plt.subplots(nrows=4, ncols=1, sharex=True)
for i, col in enumerate(df2.columns):
print(col)
axes[i] = df2[col].plot(kind="box")
他のサブプロットを埋めるにはどうすればいいですか。
回答:
回答№1は4これを行うより簡単な方法があります、あなたはただする必要があります df.plot
オプション付き subplots=True
それから外れ値を垂直方向に変更します。layout=(4,1)
):
df2.plot(kind="box",subplots=True, layout=(4,1), figsize=(8,8))
plt.show()
あるいは、サブプロットを水平に配置するのがlayout=(1,4)
):
df2.plot(kind="box",subplots=True, layout=(1,4),figsize=(15,8))
plt.show()
そして最後に、次のようにしてすべての箱ひげ図をまとめることができます。
df2.plot(kind="box", figsize=(8,8))
plt.show()
パンダで視覚化する方法の詳細については、 ドキュメンテーション.
回答№2の場合は1
軸を引数として関数plotに渡す必要があります。これらの線に沿って何か:
df2 = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list("ABCD"))
fig, axes = plt.subplots(nrows=4, ncols=1, sharex=True)
for i, col in enumerate(df2.columns):
print(col)
df2[col].plot(kind="box", ax=axes[i])
あなたの例では、あなたは 'axes'の要素を再定義しています。代わりに、Axesを一度定義してから、プロットに使用する軸をプロット関数に指示します。