Python 2.7 matplotlib中的可拖动点-如何检索点坐标

Python 2.7 matplotlib中的可拖动点-如何检索点坐标,python-2.7,matplotlib,coordinates,draggable,pyside,Python 2.7,Matplotlib,Coordinates,Draggable,Pyside,我希望能够沿着垂直线移动一个点(matplotlib.patches.Ellipse)。为此,我在PySide QtGui.QWidget内调用Dragable rectangle类() 拖动椭圆可以很好地工作,但是当我释放鼠标按钮时,我被困在如何检索椭圆的最终y坐标上(我希望在包含该y坐标的绘图旁边有一个QLabel)。从发布之日起,我有了它的最终位置: def on_release(self, event): if DraggablePoint.lock is not self:

我希望能够沿着垂直线移动一个点(matplotlib.patches.Ellipse)。为此,我在PySide QtGui.QWidget内调用Dragable rectangle类()

拖动椭圆可以很好地工作,但是当我释放鼠标按钮时,我被困在如何检索椭圆的最终y坐标上(我希望在包含该y坐标的绘图旁边有一个QLabel)。从发布之日起,我有了它的最终位置:

def on_release(self, event):
    if DraggablePoint.lock is not self:
        return
    self.point.newYcoordinate = self.point.center[1]
    self.press = None
    DraggablePoint.lock = None

    # draw everything but the selected point and store the pixel buffer
    canvas = self.point.figure.canvas
    axes = self.point.axes
    self.point.set_animated(True)
    canvas.draw()
    self.background = canvas.copy_from_bbox(self.point.axes.bbox)

    # now redraw just the point
    axes.draw_artist(self.point)

    # and blit just the redrawn area
    canvas.blit(axes.bbox)
但是如何将其连接到QLabel的文本(并在每次移动椭圆时更新此标签)


通过添加建议的信号:

def on_release(self, event):
    ...
    self.signal.updatedSignal.emit(str(self.point.newYcoordinate))
然后检索y坐标:

self.dragValue.signal.updatedSignal.connect(self.updatedValue)
与:

以及:


在回电时发出信号谢谢@tcaswell!实际上,这很简单,但由于我刚刚开始使用PySide,我缺少一些基础知识;-)请为你自己的问题写一个答案。我的意思是,你实际上可以发布一个问题的答案,然后你可以将其标记为已接受。你能这样做吗?对不起,我把编辑改成了答案
self.dragValue.signal.updatedSignal.connect(self.updatedValue)
def updatedValue(self, newValue):
    self.labelValue.setText(newValue)
class UpdatedSignal(QtCore.QObject):
    updatedSignal = QtCore.Signal(str)