Python Mathplotlib通过矩形选择选择值并删除

Python Mathplotlib通过矩形选择选择值并删除,python,graph,matplotlib,point,Python,Graph,Matplotlib,Point,下面的比较给出了一个错误“ValueError:包含多个元素的数组的真值不明确。请使用a.any()或a.all()。我也不知道如何删除数组中在最小值和最大值范围内的元素 如果self.datax>选择了最小值和self.datax

下面的比较给出了一个错误“ValueError:包含多个元素的数组的真值不明确。请使用a.any()或a.all()。我也不知道如何删除数组中在最小值和最大值范围内的元素

如果self.datax>选择了最小值和self.datax
假设我有一个名为xvalues的数组,包含21,52,3,34,5,16,47,98,9130 如何从数组中删除30到60之间的数字,使其现在包含21,3,5,16,98,9130

我提出了下面的方法,它现在删除了从数据中选择的值,但错误为.00001,并且绘图不会更新为这些新值

temp_select = self.genx[1:3]
print(temp_select)
#self.genx = list(set(self.genx)-set(temp_select))
self.genx = [ item for item in self.genx if not sel_min < item < sel_max ]
print(self.genx)
plt.plot(self.genx,self.geny)
temp\u select=self.genx[1:3]
打印(临时选择)
#self.genx=列表(设置(self.genx)-设置(临时选择))
self.genx=[self.genx中项目对应的项目,如果不是sel_最小值<项目
我不太清楚你的问题是什么。你读了吗?你好。我已经更新了上面的问题,希望它现在更清楚,是的,我已经查看了事件处理程序。我现在想弄清楚的是如何删除绘制的矩形所选择的值,并在删除值时重新绘制绘图以显示结果。到目前为止,我所做的是在on_版本的末尾,我将检查矩形边界内的条件。在本例中,对于x值,矩形的左边框(最小值)和右边框(最大值)用于确定要从genx中删除哪些值(生成的x值)。但您的问题是什么?您有一个需求列表和一堆代码。它在做什么你不期望的事,还是不做你期望的事?在这个过程中,你坚持的是什么具体部分?你能让代码更简洁,只包含你遇到麻烦的部分吗?我似乎弄不明白的是如何进行布尔比较,以检查所选数据是否包含在该矩形中。我的布尔运算正确吗?另外,我如何删除由min和max指定的选定datax?使用类似于此函数的函数确定框中的点。
temp_select = self.genx[1:3]
print(temp_select)
#self.genx = list(set(self.genx)-set(temp_select))
self.genx = [ item for item in self.genx if not sel_min < item < sel_max ]
print(self.genx)
plt.plot(self.genx,self.geny)