利用event的inaxes属性获取当前trace

 当鼠标进入一个matplotlib.figure.axes时,会触发axes_enter事件,并传入参数eventevent有一个属性event.inaxes,通过该属性遍历mplcanvasself.axes数组,即self.axes.index(event.inaxes)可以得到该axes在绘图对象axes数组中的索引,利用这个索引访问预先记录的channel数组便可以得到当前鼠标所在axes所对应的tr,这样就可以做很多事情,也是对图像放大缩小的基础之一。

 今天想在鼠标位置画一条竖线,查文档知道可以使用

from matplotlib.widgets import MultiCursor

MultiCursor这个类来很方便的绘制竖线光标。但是我使用时却未能成功,竖线依旧不出来。

multi = MultiCursor(self.fig.canvas, self.axes, color='r', lw=1 , horizOn=False,vertOn=True)
研究的半天没有进展,遂先放一放
明天先研究一下MultiCursor类来画竖线,如果依然不成功,考虑自己实现一个API来画竖线。除此之外,明天再研究一下鼠标滚轮事件放大当前图像的响应函数吧。

--------------------- 

原文:https://blog.csdn.net/u010826932/article/details/79122544 
 

猜你喜欢

转载自blog.csdn.net/YeziTong/article/details/88186526
今日推荐