Matplotlib multicursor.py用于循环生成的子图

时间:2016-05-19 13:18:30

标签: python python-2.7 matplotlib matplotlib-widget

我尝试在matplotlib中使用多个存储器,如示例here中所示。 问题是我的子图是循环生成的,这意味着我没有ax1,ax2,...... 但代码值得千言万语:

t = 0
fig = plt.figure()
while t < 16 :
     ax = fig.add_subplot(4,4,t+1)
     p1 = plot(...)
     p2 = plot(...)
     p3 = plot(...)
     p4 = plot(...)
     t = t+1
show()

有没有人有想法?谢谢!

1 个答案:

答案 0 :(得分:1)

为什么不制作一个轴列表并将其传递给多重存储器?

t = 0
fig = plt.figure()
axes_list = []
while t < 16 :
     ax = fig.add_subplot(4,4,t+1)
     axes_list.append(ax)
     p1 = plot(...)
     p2 = plot(...)
     p3 = plot(...)
     p4 = plot(...)
     t = t+1
multi = MultiCursor(fig.canvas, axes_list, color='r', lw=1)
show()