在嵌入matplotlib画布的Qt4应用程序中连接鼠标事件

2024-04-29 21:48:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个用matplotlib设计的绘图,在Python2.7中使用QT显示。我想把以下两个听众连接起来:

  1. 按钮按下事件
  2. 动议通知事件

在过去的早些时候,我使用的是普通的matplotlib,我习惯用以下方式来实现:

import matplotlib.pyplot as plt

def mouseClick(event):
    pass

def mouseMove(event):
    pass

fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_xlim((xmin, xmax))
ax.set_ylim((ymin, ymax))
fig.canvas.draw()

plt.connect('button_press_event', mouseClick)
plt.connect('motion_notify_event', mouseMove)
plt.show()

下面是我完整的QT代码:

^{pr2}$

我想在上面的代码中添加列表器。谢谢。在


Tags: 代码event绘图matplotlibdefconnectfig事件
1条回答
网友
1楼 · 发布于 2024-04-29 21:48:55

对于这种情况,您必须使用来自FigureCanvas的mpl_connect

sc.mpl_connect('button_press_event', self.mouseClick)
sc.mpl_connect('motion_notify_event', self.mouseMove)

代码:

^{pr2}$

相关问题 更多 >