我正在尝试在给定代码但未成功的情况下,在一幅图像中绘制两行的10box图,但没有成功,我如何实现这个想法。
fig, axes =plt.subplots(2,5)
sns.set_style("darkgrid")
for i,t in enumerate(new_fs):
df = pd.read_csv(t,sep='\t')
sns.boxplot(data=df, orient='v',ax=axes[i % 2] )
谢谢。
答案 0 :(得分:0)
根据the documentation for plt.subplots()
:
对于NxM,将N> 1和M> 1的子图作为2D数组返回。
因此,变量axes
是2D数组,您需要使用axes[i,j]
访问各个轴。
或者,我会这样重写您的for循环:
for t,ax in zip(new_fs, axes.flat):
df = pd.read_csv(t,sep='\t')
sns.boxplot(data=df, orient='v', ax=ax)