Python matplotlib绘图,使用鼠标滚轮放大/缩小图像
思路:
- 使用fig.canvas.mpl_connect()函数来绑定相关fig的滚轮事件
- 利用事件event的inaxes属性获取当前鼠标所在坐标系ax
- 使用get_xlim()函数获取坐标系ax的x/y轴坐标刻度范围
- 使用set()函数对坐标系ax进行放大/缩小
示例:
import matplotlib.pyplot as plt
import numpy as npfig = plt.figure()
def call_back(event):axtemp=event.inaxesx_min, x_max = axtemp.get_xlim()fanwei = (x_max - x_min) / 10if event.button == 'up':axtemp.set(xlim=(x_min + fanwei, x_max - fanwei))print('up')elif event.button == 'down':axtemp.set(xlim=(x_min - fanwei, x_max + fanwei))print('down')fig.canvas.draw_idle() # 绘图动作实时反映在图像上
fig.canvas.mpl_connect('scroll_event', call_back)
fig.canvas.mpl_connect('button_press_event', call_back)ax1 = plt.subplot(3,1,1)#截取幕布的一部分
ax1.xaxis.set_major_formatter(plt.NullFormatter()) # 取消x轴坐标
x = np.linspace(-5, 5, 10)
y = x ** 2 + 1
plt.ylabel('first')
plt.plot(x, y)
plt.grid()
ax2 = plt.subplot(3,1,2)
ax2.xaxis.set_major_formatter(plt.NullFormatter()) # 取消x轴坐标
y1=-x**2+1
plt.plot(x, y1)ax3 = plt.subplot(3,1,3)
y3=-x*2+1
plt.plot(x, y3)plt.show()
输出效果:
PS:在相应坐标系内滚动鼠标滚轮即可放大/缩小x轴。
Python matplotlib绘图,使用鼠标滚轮放大/缩小图像相关推荐
- LabVIEW操作鼠标滚轮放大/缩小图像
之前分享过一篇关于LabVIEW采集鼠标.键盘数据的文章:LabVIEW采集鼠标.键盘数据,本篇博文将分享一个关于鼠标滚轮的有意思小技巧:操作鼠标滚轮来放大和缩小图片. 示例效果如下所示: 本示例功能 ...
- Jquery鼠标滚轮放大缩小图片
使用Jquery鼠标点击图片,划动鼠标滚轮放大缩小图片. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...
- 鼠标滚轮放大/缩小图片
<img id=pic src=" http://community.csdn.net/images/CSDN_logo.GIF" width=105 height=31 b ...
- 鼠标滚轮 放大缩小图片
js实现鼠标滚轮放大缩小图片 <script> //放大缩小图片 function sdZoom(o) { var zoom=parseInt(o.styl ...
- vscode在ubuntu下安装插件,同时配置python虚拟环境、ctrl+鼠标滚轮放大代码窗口设置
linux下vs code 两大问题: 1.无法在code中切换虚拟环境 2.文件夹有时候会莫名其妙打不开,似乎和文件夹的命名有关系. 已弃坑,不再使用. ---------------------- ...
- js实现鼠标滚轮放大缩小页面指定区域(css3 scale)
一.需求 鼠标滚轮在红色边框区域内向上滚动:绿色边框盒子里所有元素缩小. 鼠标滚轮在红色边框区域内向下滚动:绿色边框盒子里所有元素放大. 点击还原按钮:绿色盒子里所有元素还原为初始值. 二.相关知识点 ...
- 【Pycharm】用鼠标滚轮放大缩小字体
放大字体 File->Setting->Keymap->搜索"increase"->选第一个"Increase Font Size"并双 ...
- Pycharm-用鼠标滚轮放大缩小字体大小
1,pycharm 字体放大设置: ①,File -> setting -> Keymap ->在搜寻框中输入:increase -> Increase Font Size(双 ...
- chart控件支持鼠标滚轮放大缩小_强大的鼠标侧键功能设置工具:X-Mouse Button Control...
Update:以下内容仅适用于 Windows 系统!AutoCAD for mac 用户该怎么办,下次再细说... 作为 AutoCAD 用户,一个好的鼠标,能让工作更加高效和身心健康!所以,一定要 ...
最新文章
- 机房收费系统总结【2】-细节优化
- 利用EntLib授权机制实现对ASP.NET页面的自动授权
- Jmeter性能测试之Switch控制器使用
- 字库点阵测试程序代码
- 分布式事务seata只支持MySQL_阿里分布式事务框架Seata原理解析
- MFC如何让输入框只能输入数字
- 晶体(谐振器)震荡电路与参数
- MapInfo地图投影的添加
- VS2010 上手案例---hello word
- 用indy收邮件的问题,怎么样把邮件存放到本地,最好是存到数据库
- iOS之crash分析篇--符号化
- 超大源码库使用git clone --mirror克隆远程代码制作镜像失败的处理办法
- Effective Modern C++ 完全解读笔记汇总
- 把一个人的特点写具体作文_把一个人的特点写具体
- 纯js轮播图练习-3,类似于淘宝海报带小圆点轮播图
- chart metadata is missing these dependencies
- 小米5S TWRP刷面具、EdXposed
- 锁相环环路滤波器计算公式_锁相环计算方法.doc
- 关于西门子软件SIMIT虚拟在环调试的一些问题解决
- 剖析8B/10B的实现机制
热门文章
- 深入理解JVM:Java语言与JVM关系
- 数据分析师前景如何,需要学习什么技能?
- squid代理服务+ip代理池
- lua游戏代码_在游戏中如何使用LUA脚本语言
- 微信小程序|使用小程序制作一个时间管理小工具
- https://mp.weixin.qq.com/s/_ZxzEo1HfyM4DH-rLKcgIg? 电容(2)之旁路电容
- leetcode - 22 672. 灯泡开关 Ⅱ
- o在计算机进制中,计算机里的0和1,二进制
- android画笔,Android自定义View系列之画笔(一)
- Operand of null-aware operation ‘!‘ has type ‘SchedulerBinding‘ which excludes null.