在for循环中调整matplotlib散点图的大小

时间:2019-07-14 02:33:13

标签: python pandas matplotlib

我想为每个子图设置图形大小。一种尺寸适合所有人。数据来自熊猫数据框

X = pd.DataFrame(model_data[:,1:], columns = col[0:12])
y = pd.DataFrame(model_data[:,0], columns = ['mv'])


a = 1
for i in range(12):
    plt.figure(figsize=(20, 8))
    plt.subplot(3,4,a)
    plt.scatter(X.iloc[:, i], y)
    a += 1

我希望所有图都为3x4格式,每个图的大小分别为20、8。

如何有效解决此问题?

1 个答案:

答案 0 :(得分:1)

默认情况下,子图的大小相同。 (20,8)对于每个子图来说都很大。也许以(20,8)开头来表示整个图形的大小:

fig, axes = plt.subplots(3, 4, figsize=(20,8))
for i, ax in enumerate(axes.flatten()):
    ax.scatter(X.iloc[:, i], y)