你好,我正在尝试绘制多个条形图,但是有些东西起作用了并且得到了错误的图,这是代码:
plt.rcParams['figure.figsize']=(15,16)
fig, axes = plt.subplots(nrows = 3, ncols = 3)
for i in range(len(data.columns)- 1):
for j in range(3):
for k in range(3):
sns.barplot(y = data.iloc[: , i], x = data.quality, ax = axes[j][k])
答案 0 :(得分:1)
问题是外循环是通过列的,而内循环是通过轴的,当您走到绘制线时,循环发生在j&k处而没有外循环,因此您在不同的轴上绘制同一列。 / p>
类似这样的东西应该可以工作:
首先创建轴列表,然后同时遍历列和轴列表
l = [(j,k) for j in range(3) for k in range(3)]
for i,q in zip(range(len(data.columns)- 1),l):
sns.barplot(y = data.iloc[: , i], x = data.quality, ax = axes[q[0]][q[1]])