有没有办法在同一行上绘制3个(或更多)图表

时间:2020-07-29 03:47:07

标签: python seaborn

我有数据帧df = pd.DataFrame(x, columns = ['col1', 'col2', 'col3'])。我知道我可以使用sns.distplot(df.col1)为每列绘制直方图。我可以在同一行上为所有3列绘制单独的直方图吗?

2 个答案:

答案 0 :(得分:0)

我建议您在此处使用matplotlib:

fig = matplotlib.pyplot.subplots(nrows=1, 
                           ncols=3)
fig.plot(df['col1'])
fig.plot(df['col2'])
fig.plot(df['col3'])
plt.show()

我认为这会很好。对于外部参考,您可以转到https://www.educative.io/edpresso/what-is-a-subplots-in-matplotlib

答案 1 :(得分:0)

替代方法:

plt.subplots

编辑: 要调整子图的大小,请使用fig, axs = plt.subplots(1, 3, gridspec_kw={'width_ratios': [3, 1, 1]}) sns.distplot(df.col1, ax=axs[0]) sns.distplot(df.col2, ax=axs[1]) documentation

make

子图将具有3:1:1的宽度比。