我有一个程序如下:
首先,我画了一张照片:
fig=plt.figure(figsize=(7,6))
ax = fig.add_subplot(111)
ax.plot(x,y,'ro')
ax.set_title('click on points')
plt.show()
然后当我右键单击图片时。它会放大,我会在放大图片中选择一个点:
def onclick(event):
print 'button=%d, x=%d, y=%d, xdata=%f, ydata=%f'%(
event.button, event.x, event.y, event.xdata, event.ydata)
if event.button==3:
'''
function zoom-in
'''
plt.show()
onepoint = pylab.ginput(1)
return True
下面是可以调用“onclick”函数的命令
cid= fig.canvas.mpl_connect('button_press_event', onclick)
问题是“如何将”onpoint“中的变量”onepoint“提交给主程序”
答案 0 :(得分:0)
您可以使用全局变量。在函数外声明var:
onepoint = 0
然后告诉你的功能你会像这样使用它:
def onclick(event):
global onepoint
print 'button=%d, x=%d, y=%d, xdata=%f, ydata=%f'%(
event.button, event.x, event.y, event.xdata, event.ydata)
if event.button==3:
'''
function zoom-in
'''
plt.show()
onepoint = pylab.ginput(1)
return True
函数对变量所做的任何更改都会对其产生全局影响。