Python 无法从绘图中删除axvspan
在第三次单击绘图后,我试图删除axvspan()函数 这是我目前的代码:Python 无法从绘图中删除axvspan,python,matplotlib,pyqt,Python,Matplotlib,Pyqt,在第三次单击绘图后,我试图删除axvspan()函数 这是我目前的代码: def shaded_region(self, event): if event.button == 1 and ViewWidget.click == 0: ViewWidget.click +=1 ViewWidget.xx1 = event.xdata self.cid2 = self.figure_canvas.mpl_connect("motion
def shaded_region(self, event):
if event.button == 1 and ViewWidget.click == 0:
ViewWidget.click +=1
ViewWidget.xx1 = event.xdata
self.cid2 = self.figure_canvas.mpl_connect("motion_notify_event", self.mouseCoordsInMotion)
def mouseCoordsInMotion(self, event):
X1 = ViewWidget.xx1
X2 = event.xdata
self.aspan = self.axes.axvspan(X1,X2, alpha = 0.3, color = "cyan")
self.figure_canvas.draw_idle()
self.cid3 = self.figure_canvas.mpl_connect('button_press_event', self.selectedRegion)
def selectedRegion(self, event):
ViewWidget.click += 1
if event.button == 1 and ViewWidget.click == 2:
print "Conectado a selectedRegion"
self.figure_canvas.mpl_disconnect(self.cid1)
self.figure_canvas.mpl_disconnect(self.cid2)
ViewWidget.click = 3
X1 = ViewWidget.xx1
ViewWidget.xx2 = event.xdata
X2 = ViewWidget.xx2
self.aspan = self.axes.axvspan(X1,X2, alpha = 0.3, color = "cyan")
return ViewWidget.xx1, ViewWidget.xx2, ViewWidget.click
else:
ViewWidget.click = 3
self.figure_canvas.mpl_disconnect(self.cid3)
def erase_selection(self, event):
if event.button == 1 and ViewWidget.click == 3:
ViewWidget.click = 0
self.aspan.remove()
self.figure_canvas.draw_idle()
因此,使用shaded_region
方法,当我单击一次时,我从鼠标的坐标开始绘制。然后,我第二次单击停止绘制,当我想擦除第三次单击所绘制的内容时,它不起作用
我怎样才能做到这一点?。希望你能帮助我