python matplotlib如何获得多个轴手柄

时间:2016-08-04 13:43:14

标签: python matplotlib

我的情节包含许多子图,我需要一个句柄列表来处理它们中的每一个。现在我做以下

axes = [fig.add_subplot(2,3,1), fig.add_subplot(2,3,2),                       
        fig.add_subplot(2,3,3), fig.add_subplot(2,3,4),                       
        fig.add_subplot(2,3,5), fig.add_subplot(2,3,6)]

是否有一个内置函数可以通过简单地指定2和3来更简洁地获得axes

2 个答案:

答案 0 :(得分:3)

您可以使用:

f, ((ax1, ax2, ax3),(ax4, ax5, ax6)) = plt.subplots(2, 3)

或:

f, axarray = plt.subplots(2, 3)

答案 1 :(得分:2)

只需使用列表推导:

axes = [fig.add_subplot(2,3,i+1) for i in range(6)]

或者有点普遍:

x = 2
y = 3
axes = [fig.add_subplot(x,y,i+1) for i in range(x*y)]