想请问一下使用python怎么实现在matplotlib的画布上点击鼠标画一条垂直线 标注出x轴

無語無言
  • 1
新手上路,请多包涵

想请问一下使用python怎么实现在matplotlib的画布上点击鼠标画一条垂直线
标注出x轴
就是类似于 我在这个图上点一下 然后就画出一条垂直线标注出这个点,移动鼠标到逼得地方点击,然后重新在这个点上画出来

回复
阅读 393
1 个回答

多看看 Matplotlib 上事件处理的 API 吧。附:

import matplotlib.pyplot as plt


class LineBuilder:
    def __init__(self, line) -> None:
        self.line = line
        self.cid = line.figure.canvas.mpl_connect('button_press_event', self)

    def __call__(self, event) -> None:
        print('click', event)
        self.line.set_data((event.xdata, event.xdata), ax.get_ylim())
        self.line.figure.canvas.draw()


fig, ax = plt.subplots()
ax.set_title('Click to add line')
line, = ax.plot([0], [0])

lineBuilder = LineBuilder(line)

plt.show()
宣传栏