绘制彼此相邻的直方图
plotting histograms next to each other
我有 4 个直方图形成 4 个不同的 df。我可以将它们一个接一个地绘制出来,但想不出一种方法将它们并排绘制,让我们将 2 个放在顶部,2 个放在底部。
hist_1 = df1.hist(bins=50,range=[0,1])
hist_2 = df2.hist(bins=50,range=[0,1])
hist_3 = df3.hist(bins=50,range=[0,1])
hist_4 = df4.hist(bins=50,range=[0,1])
我试过不同的东西,但总是显示它们重叠在同一个图形上。
这是你期待的吗?使用 subplots
将轴分成 4 个(顶部 2 个,底部 2 个),然后绘制每个子图中每个 df 的直方图。
代码:
fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2, sharex=True)
axs = [ax1, ax2, ax3, ax4]
dfs = [df1, df2, df3, df4]
for n in range(len(axs)):
axs[n].hist(dfs[n], bins=50, range=[0,1])
plt.show()
输出:
我有 4 个直方图形成 4 个不同的 df。我可以将它们一个接一个地绘制出来,但想不出一种方法将它们并排绘制,让我们将 2 个放在顶部,2 个放在底部。
hist_1 = df1.hist(bins=50,range=[0,1])
hist_2 = df2.hist(bins=50,range=[0,1])
hist_3 = df3.hist(bins=50,range=[0,1])
hist_4 = df4.hist(bins=50,range=[0,1])
我试过不同的东西,但总是显示它们重叠在同一个图形上。
这是你期待的吗?使用 subplots
将轴分成 4 个(顶部 2 个,底部 2 个),然后绘制每个子图中每个 df 的直方图。
代码:
fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2, sharex=True)
axs = [ax1, ax2, ax3, ax4]
dfs = [df1, df2, df3, df4]
for n in range(len(axs)):
axs[n].hist(dfs[n], bins=50, range=[0,1])
plt.show()
输出: