我试图在调用 button_press_event 时将文本添加到鼠标指针所在的图形,并在调用 button_release_event 时将其删除。我已成功添加文本,但无法将其删除。这是我使用的部分代码:
def onclick(event):
print 'you pressed', event.button, event.xdata, event.ydata
plt.text(event.xdata, event.ydata, 'TESTTEST', fontsize=8)
fig.canvas.draw()
def offclick(event):
print 'you released', event.button, event.xdata, event.ydata
#not sure what to put here
#I tried:
#plt.text(event.xdata, event.ydata, '')
fig.canvas.draw()
fig.canvas.mpl_connect('button_press_event', onclick)
fig.canvas.mpl_connect('button_release_event', offclick)
plt.show()
最佳答案
假设你应该在一个类中使用它并引用下面的 txt
作为 self.txt
为了方便我在这里使用 global:
txt = None
def onclick(event):
global txt
txt = plt.text(event.xdata, event.ydata, 'TESTTEST', fontsize=8)
fig.canvas.draw()
def offclick(event):
txt.remove()
fig.canvas.draw()
fig.canvas.mpl_connect('button_press_event', onclick)
fig.canvas.mpl_connect('button_release_event', offclick)
plt.show()
关于python matplotlib 使用按钮事件添加和删除文本到图形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5600370/