最近使用Matplotlib绘图嵌入PyQt5功能,GUI图形界面有9个图形分页,在点选每个分布查看曲线图时,想要获取图层句柄以得到鼠标处数据。在Matplotlib官网阅了不少文档说明,又在CSDN、知乎、简书和bing搜索2天,最后终于找到了方法。其实在Matplotlib官网说明文档中就有,只是没有查找到。
Matplotlib应该有4个图层:canvas(画布层)、figure(图像层)、axes(坐标层)和plot(绘制层)。目前使用了前3种句柄获取方法,具体操作如下:
获取canvas层句柄:event.canvas
获取figure句柄:event.canvas.figure
获取axes句柄:
1)当前最顶axes层——event.canvas.figure.gca()
2)当前图像所有axes层——event.canvas.figure.get_axes()
3)将当前最顶axes层赋给ax——event.canvas.figure.gca(ax)
目前只了解这么多,其他的功能有待探索。