Ваш код будет работать, если вы сгладите объект axes
, потому что в данный момент вы выполняете цикл один раз над axes
, который является двумерным объектом. Так что используйте axes.flatten()
в for для l oop, а затем используйте ax.scatter
, который построит каждый столбец на новую фигуру.
Порядок построения будет первым, затем вторым и третьим рядом
fig, axes = plt.subplots(nrows=3, ncols=2, figsize=(12, 12))
for column, ax in zip(['CRIM', 'ZN','INDUS', 'CHAS', 'NOX', 'RM'], axes.flatten()):
ax.scatter(boston_df[column], boston_df.MEDV)