如何在python中扩展子图

时间:2018-03-27 17:54:28

标签: python matplotlib subplot margins

我正在尝试使用以下代码获得许多子图(7 * 4行* col):

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(100)
y = np.arange(100)

for i in range(28):
    plt.subplot(4, 7, i+1)
    plt.scatter(x, y)

plt.tight_layout()
plt.show()

它可以生成所有子图,但各个图周围的边距很宽:

enter image description here

如果我省略tight_layout(),那么它们会更靠近,但在顶部,底部,右侧和左侧有很大的余量:

enter image description here

如何减少或消除数字之间以及数字周围的额外空间?

1 个答案:

答案 0 :(得分:0)

您可以使用subplots_adjust方法,根据需要调整wspacehspace参数(分别为宽度空间和高度空间):

for i in range(28):
    plt.subplot(4, 7, i+1)
    plt.scatter(x, y)

plt.subplots_adjust(wspace=1, hspace=1)

enter image description here

documentation,这些“表示为平均轴宽度/高度的一部分”