如何清除 PYQTGRAPH 中的 ScatterPlotItem

Posted

技术标签:

【中文标题】如何清除 PYQTGRAPH 中的 ScatterPlotItem【英文标题】:How do I clear a ScatterPlotItem in PYQTGRAPH 【发布时间】:2017-02-14 13:05:56 【问题描述】:

我正在尝试使用 ScatterPlotItem 和“+”符号作为光标在我的图形周围移动“光标”。光标完美地更新了它的位置,但我不知道如何清除最后一个实例。这是我用来绘制“光标”的线。

self.cursor2 = self.p2_3.addItem(pg.ScatterPlotItem([self.xx], [self.yy], pen=None, symbol='+', color = 'b'))

我尝试了 self.cursor2.clear() 但没有奏效。任何帮助表示赞赏。

【问题讨论】:

【参考方案1】:

当您调用 addItem 时,您将添加 plotdataitem,在本例中为您的 plotitem 中的 scatterplotitem。要删除它,您以相同的方式调用 removeItem 。但是您需要保留对 scatterplotitem 的引用才能做到这一点。

请注意,addItem 不返回任何内容,即您的 self.cursor2 为 None。

如果您想从情节中删除所有内容,您可以调用

self.p2_3.clear()

否则,您可以像这样删除散点图项

import pyqtgraph as pg

win = pg.GraphicsWindow()
plotitem = win.addPlot()
scatterplot = pg.ScatterPlotItem([2], [3], symbol='+', color = 'b')

plotitem.addItem(scatterplot)
plotitem.removeItem(scatterplot)

【讨论】:

工作就像一个魅力。谢谢。

以上是关于如何清除 PYQTGRAPH 中的 ScatterPlotItem的主要内容,如果未能解决你的问题,请参考以下文章

如何更新pyqtgraph中的绘图?

我似乎找不到一种方法来获取Pyqtgraph中ScatterPlotItem的所有点的列表

使用 pyqtgraph 添加新数据栏的最快方法

如何更改 PyQtGraph ImageView 中的鼠标滚轮行为?

如何在pyqtgraph中缩放绘图

如何使用 PyQtGraph 获取堆栈图?