matplotlib官方文档网站:https://matplotlib.org/
我的思想是在案例中学习而不是挨着一个一个看,在案例中学习能很快掌握,并且能不断保持学习的热情,下面开始吧。

文章目录

  • 1.介绍
  • 2.结构
  • 3.案例1

1.介绍

这个模块是matplotlib中的GUI模块,可以通过调整bottom来实时改变显示的结果

2.结构

话不多说,直接上官方文档的图

3.案例1

实验环境为python3.6
任务:实现能实时改变值而改变图像的小程序
1.首先,我们导入需要的库

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.widgets import Slider

2.定义主函数:

if __name__ == '__main__':fig = plt.figure() #创建一个图像对象ax1 = fig.add_subplot(111) #将ax1设置为放在图像中,图像中只有一张子图片  plt.subplots_adjust(bottom=0.3)#设置图像在最后显示框中离底部的40%处,以便后面拖动条的显示。s1 = plt.axes([0.25, 0.1, 0.6, 0.05], facecolor='yellow') #设置slider1的位置slider1 = Slider(s1, 'gamma',valmin=0.0, valmax=100.0, valinit=10.0 ,valstep=1.0)slider1.on_changed(update)#这句代码至关重要,用于实时更新slider1.reset()#Reset the slider to the initial value.slider1.set_val(10.0)#Set slider value to val.plt.show()

3.然后,我们加入update函数
要做到实时更新我们必须先建立一个update函数来获得实时更新的值update函数只能有一个参数,即val,val是validation的缩写,意为变量。

def update(val):gamma = slider1.valx = np.linspace(1,100,100)y = np.sin(x*np.log(gamma))plt.plot(x,y)ax1.clear()ax1.plot(x,y)

完整的代码如下:

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.widgets import Sliderdef update(val):gamma = slider1.valx = np.linspace(1,100,100)y = np.sin(x*np.log(gamma))#随便设置一个漂亮的函数plt.plot(x,y)ax1.clear()ax1.plot(x,y)if __name__ == '__main__':fig = plt.figure()ax1 = fig.add_subplot(111)plt.subplots_adjust(bottom=0.3)s1 = plt.axes([0.25, 0.1, 0.6, 0.05], facecolor='yellow') #设置slider1的位置slider1 = Slider(s1, 'gamma',valmin=0.0, valmax=100.0, valinit=10.0 ,valstep=1.0)#设置滑动条的属性slider1.on_changed(update)slider1.reset()#Reset the slider to the initial value.slider1.set_val(10.0)#Set slider value to val.plt.show()

运行后首先呈现这样子

试着跳动下面的滑动轴,神奇的事情发生了


未完待续2022.2.12

matplotlib.widgets简单上手相关推荐

  1. python画函数图像要用到的模块_教你如何绘制数学函数图像——numpy和matplotlib的简单应用...

    numpy和matplotlib的简单应用 一.numpy库 1.什么是numpy NumPy系统是Python的一种开源的数值计算扩展.这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表 ...

  2. 使用 matplotlib绘制简单图形,保存图片的方法

    本博客介绍如何使用 matplotlib 绘制简单的图形,并介绍保存图片的方法. matplotlib 可以绘制出很高级,很复杂的图形,本篇博客不做介绍,可以查看官方文档,写的很清楚,这里仅对部分使用 ...

  3. 海豚php如何添加节点,python+matplotlib绘制简单的海豚(顶点和节点的操作)

    海豚 本文例子主要展示了如何使用补丁.路径和转换类绘制和操作给定的顶点和节点的形状. 测试可用. import matplotlib.cm as cm import matplotlib.pyplot ...

  4. linux脚本量产,可玩性很高的量产键盘、套件 HEAVY SHELL KIRA 96简单上手

    1.jpg (45.97 KB, 下载次数: 4) 可玩性很高的量产键盘.套件 HEAVY SHELL KIRA 96简单上手 2021-2-2 14:20 上传HEAVY SHELL Kira 96 ...

  5. 【有趣的Python小程序】Python多个简单上手的库制作WalkLattice 走格子游戏 (思路篇)上

    篇写上一个思路篇,那么今天我们就来完成这一项工作 源代码和配套文件 链接: https://caiyun.139.com/m/i?135ClY1yWrSKX 提取码:e4pq 复制内容打开中国移动云盘 ...

  6. 哈希宝-简单上手教程

    闲来无事做点什么 没有入场的不建议入场,使用已有设备,赚取额外收益即可 随着kuang潮的兴起,越来越多人开始挖kuang,但是"正确的上网姿势".钱包.kuang池.币种等等让人 ...

  7. 红米note7找android,红米note7荣耀v20简单上手体验

    红米note7&荣耀v20简单上手体验 2019-02-03 12:31:00 49点赞 22收藏 41评论 起因是老爸说自己手机不太好用了,让我给买个新的,后来我老婆也表示现在用的小米6屏也 ...

  8. STM32F429I-Discovery学习笔记--(1)简单上手和官方例程的下载与使用

    STM32F429I-Discovery学习笔记–(1)简单上手和官方例程的下载与使用 到手测试 收到开发板后我们要首先检查一下外观有没有磕碰破损,排针是否发生弯折,重要的是看一下JP3和CN4处的跳 ...

  9. python wxpy模块,python wxpy模块 (一)简单上手

    简单上手 登陆微信: 导入模块 from wxpy import * 初始化机器人,扫码登陆 bot = Bot() 找到好友: 搜索名称含有 "游否" 的男性深圳好友 my_fr ...

最新文章

  1. 2021中国大学排名发布:北京大学连续14年位居榜首
  2. 【大神】软件建模仿真空气冷凝集水器,末日饮水荒野求生水资源解决方案
  3. 【学习笔记】4、Jupyter Notebook闪退问题
  4. Scala偏函数使用示例
  5. C#中的Using的用法
  6. 2017计算机应用技术考研,2017年中国科学技术大学081203计算机应用技术考研专业目录与考试科目.docx...
  7. 怎么用计算机画正弦函数图像,几何画板如何绘制正弦函数图象
  8. Django框架——HttpRequest对象
  9. 【网络安全工程师面试合集】—邮件协议是如何被安全人员利用的?
  10. css中的一些选择器的用法总结
  11. 前端页面实现在线预览文档Word、Excel、PPT、PDF
  12. 痛惜!浙大一学科带头人病逝,年仅47岁
  13. A/B/C类ip地址 掩码 广播地址 路由汇集 保留地址
  14. 三菱Q系列做modbusTCP服务器,汇川H3u与三菱Q/L系列PLC MODBUS TCP通信说明
  15. access字段属性设置下拉列表_CAD常用命令:ATTDEF(定义属性)
  16. Xcode升级之后,报 Moudule ‘xxx‘ not found,或 Could not find module ‘xxx‘ for target ‘arm64-apple-ios
  17. 计算机系统时间设置打不开,电脑时间或日期不对的修改方式
  18. ADBPGGreenplum 成本优化之磁盘水位管理
  19. ESP8266作为无线串口设置
  20. 【计算机图形学】【笔记】2、什么是UV

热门文章

  1. linux 如何延迟100ms,Linux延时函数
  2. 建设GSM900/1800双频网应考虑的几个问题(转)
  3. leveldb代码阅读笔记(一)
  4. 北斗和GPS定位在室外非常好用,但当手机进入室内时,它们的定位功能就很不准,甚至无法定位。我们可以开启WLAN扫描定位WIFI模块固定编码或者开启手机的A-GPS辅助定位通过基站,A-GPS服务器定位
  5. java ssh 服务器文件传输_java使用SFTP上传文件到资源服务器
  6. OpenIL(DevIL)- 开发者图像库
  7. C语言——跳跃游戏 II
  8. 【JAVA】逻辑控制
  9. Android updater-scripts(Edify Script)各函数详细说明【转】
  10. Android 使用MediaPlayer播放本地raw资源超简单实现点击播放效果