本篇文章小编给大家分享一下python中matplotlib实现随鼠标滑动自动标注代码实例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。

Python+matplotlib进行鼠标交互,实现动态标注,数据可视化显示,鼠标划过时画一条竖线并使用标签来显示当前值。

Python3.6.5,代码示例:

import matplotlib.pyplot as plt

import numpy as np

def Show(y):

#参数为一个list

len_y = len(y)

x = range(len_y)

_y = [y[-1]]*len_y

fig = plt.figure(figsize=(960/72,360/72))

ax1 = fig.add_subplot(1,1,1)

ax1.plot(x, y, color='blue')

line_x = ax1.plot(x, _y, color='skyblue')[0]

line_y = ax1.axvline(x=len_y-1, color='skyblue')

ax1.set_title('aaa')

#标签

text0 = plt.text(len_y-1,y[-1],str(y[-1]),fontsize = 10)

def scroll(event):

axtemp=event.inaxes

x_min, x_max = axtemp.get_xlim()

fanwei_x = (x_max - x_min) / 10

if event.button == 'up':

axtemp.set(xlim=(x_min + fanwei_x, x_max - fanwei_x))

elif event.button == 'down':

axtemp.set(xlim=(x_min - fanwei_x, x_max + fanwei_x))

fig.canvas.draw_idle()

#这个函数实时更新图片的显示内容

def motion(event):

try:

temp = y[int(np.round(event.xdata))]

for i in range(len_y):

_y[i] = temp

line_x.set_ydata(_y)

line_y.set_xdata(event.xdata)

######

text0.set_position((event.xdata, temp))

text0.set_text(str(temp))

fig.canvas.draw_idle() # 绘图动作实时反映在图像上

except:

pass

fig.canvas.mpl_connect('scroll_event', scroll)

fig.canvas.mpl_connect('motion_notify_event', motion)

plt.show()

效果演示:

python图像物体的自动标注_python中matplotlib实现随鼠标滑动自动标注代码实例相关推荐

  1. python进程池和线程池_Python中的进程池与线程池(包含代码)

    引入进程池与线程池 使用ProcessPoolExecutor进程池,使用ThreadPoolExecutor 使用shutdown 使用submit同步调用 使用submit异步调用 异步+回调函数 ...

  2. python3d动图_python中Matplotlib实现绘制3D图的示例代码

    Matplotlib 也可以绘制 3D 图像,与二维图像不同的是,绘制三维图像主要通过 mplot3d 模块实现.但是,使用 Matplotlib 绘制三维图像实际上是在二维画布上展示,所以一般绘制三 ...

  3. 【python绘图】seaborn可视化+鼠标滑动自动标注数据

    [Python数据处理]批量导出深度学习网络训练生成的event格式文件中的数据到同一excel表的不同sheet [Python数据处理]读取event文件导出的excel数据并作平滑处理(类似te ...

  4. Python基础_第3章_Python中的循环结构

    Python基础_第3章_Python中的循环结构 文章目录 Python基础_第3章_Python中的循环结构 Python中的循环结构 一.回顾分支练习题 1.判断是否为一个合法三角形 2.求世界 ...

  5. Python基础_第5章_Python中的数据序列

    Python基础_第5章_Python中的数据序列 文章目录 Python基础_第5章_Python中的数据序列 Python中的数据序列 一.字典--Python中的==查询==神器 1.为什么需要 ...

  6. python控制软件点击_Python小程序 控制鼠标循环点击代码实例

    Python小程序 控制鼠标循环点击代码实例 这篇文章主要介绍了Python小程序 控制鼠标循环点击代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以 ...

  7. python绘制三维曲面图-python中Matplotlib实现绘制3D图的示例代码

    Matplotlib 也可以绘制 3D 图像,与二维图像不同的是,绘制三维图像主要通过 mplot3d 模块实现.但是,使用 Matplotlib 绘制三维图像实际上是在二维画布上展示,所以一般绘制三 ...

  8. python通过什么连接数据库_python中常用的各种数据库操作模块和连接实例

    这篇文章主要介绍了python中常用的各种数据库操作模块和连接实例,包括sqlite3.oracle.mysql.excel,需要的朋友可以参考下 工作中,经常会有用python访问各种数据库的需求, ...

  9. python中if else语句_python 中if else 语句的作用及示例代码

    引入:if-else的作用,满足一个条件做什么,否则做什么. if-else语句语法结构 if 判断条件: 要执行的代码 else: 要执行的代码 判断条件:一般为关系表达式或bool类型的值 执行过 ...

  10. python pygame鼠标点击_Python中pygame的mouse鼠标事件用法实例

    本文实例讲述了Python中pygame的mouse鼠标事件用法.分享给大家供大家参考,具体如下: pygame.mouse提供了一些方法获取鼠标设备当前的状态 ''' pygame.mouse.ge ...

最新文章

  1. G - 数据结构实验之查找七:线性之哈希表
  2. python列表解析式如何使用_python列表推导式操作解析
  3. SAP Spartacus B2B页面Budget页面的设计原理
  4. excel合并两列内容_不要再粘粘粘,合并Excel表格数据,3秒完成
  5. DM8168 --交叉编译ARM版 Qt (qt-everywhere-opensource-src-4.8.4)
  6. android线程卡死,Android主线程为什么不因为Loop死循环卡死
  7. Linux各个目录的用途
  8. python实现网站测速软件_python实现网站友情链接查询与网站死链接查询的两个脚步...
  9. 通过php jq ajax 提交form表单
  10. 教你如何认识各种光纤接口类型
  11. Python中一个非常高效的json对比库--deepdiff
  12. “茴”字有几种写法? Java 实现 WebSocket 的方式
  13. mac如何显示隐藏文件
  14. java基础知识-----转
  15. AQS同步器的实现原理
  16. 2023-01-03 有关C++继承多态的一点想法
  17. Linux--JVM内存设置
  18. HTML强制视频倍速,强行网页视频倍速播放
  19. [转]Top Five Ways SpiderLabs Got Domain Admin on Your Internal Network
  20. 管理基础-不能学互联网

热门文章

  1. 汇编语言 emu8086软件的安装和输出Hello,world
  2. 预编译stdafx.h,无法找到文件问题,红色波浪线
  3. 【网络传输协议】WS即WebSocket通信协议
  4. K8S 还没用,K9S 又是什么鬼?
  5. 电子元器件选型——MOSFET
  6. Python(十三)企业微信Api自动化框架搭建
  7. 软件测试加油站ic卡管理系统,加油站IC卡管理系统,加油机IC卡管理系统,加油站自助加油机功能介绍...
  8. 64qam星座图matlab,16QAM_星形和矩形星座图调制解调MATLAB代码(最新整理)
  9. 学神经网络需要什么基础,神经网络从入门到精通
  10. 荣耀盒子无线网连接不上电脑连接服务器,华为荣耀盒子无法连接有线网络怎么解决...