Python使用matplotlib实现交换式图形显示功能示例


Posted in Python onSeptember 06, 2019

本文实例讲述了Python使用matplotlib实现交换式图形显示功能。分享给大家供大家参考,具体如下:

一 代码

from random import choice
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.widgets import RadioButtons,Button
t = np.arange(0.0,2.0,0.01)
s0 = np.sin(2*np.pi*t)
s1 = np.sin(4*np.pi*t)
s2 = np.sin(8*np.pi*t)
fig, ax = plt.subplots()
l,= ax.plot(t, s0, lw=2, color='red')
plt.subplots_adjust(left=0.3)
#定义允许的几种频率,并创建单选钮组件
#其中[0.05, 0.7, 0.15, 0.15]表示组件在窗口上的归一化位置
axcolor ='lightgoldenrodyellow'
rax = plt.axes([0.05,0.7,0.15,0.15], axisbg=axcolor)
radio =RadioButtons(rax,('2 Hz','4 Hz','8 Hz'))
hzdict ={'2 Hz': s0,'4 Hz': s1,'8 Hz': s2}
def hzfunc(label):
ydata = hzdict[label]
l.set_ydata(ydata)
plt.draw()
radio.on_clicked(hzfunc)
#定义允许的几种颜色,并创建单选钮组件
rax = plt.axes([0.05,0.4,0.15,0.15], axisbg=axcolor)
colors =('red','blue','green')
radio2 =RadioButtons(rax, colors)
def colorfunc(label):
l.set_color(label)
plt.draw()
radio2.on_clicked(colorfunc)
#定义允许的几种线型,并创建单选钮组件
rax = plt.axes([0.05,0.1,0.15,0.15], axisbg=axcolor)
styles =('-','--','-.','steps',':')
radio3 =RadioButtons(rax, styles)
def stylefunc(label):
l.set_linestyle(label)
plt.draw()
radio3.on_clicked(stylefunc)
#定义按钮单击事件处理函数,并在窗口上创建按钮
def randomFig(event):
#随机选择一个频率,同时设置单选钮的选中项
hz = choice(tuple(hzdict.keys()))
hzLabels =[label.get_text()for label in radio.labels]
radio.set_active(hzLabels.index(hz))
l.set_ydata(hzdict[hz])
#随机选择一个颜色,同时设置单选钮的选中项
c = choice(colors)
radio2.set_active(colors.index(c))
l.set_color(c)
#随机选择一个线型,同时设置单选钮的选中项
style = choice(styles)
radio3.set_active(styles.index(style))
l.set_linestyle(style)
#根据设置的属性绘制图形
plt.draw()
axRnd = plt.axes([0.5,0.015,0.2,0.045])
buttonRnd =Button(axRnd,'Random Figure')
buttonRnd.on_clicked(randomFig)
#显示图形
plt.show()

二 运行结果

Python使用matplotlib实现交换式图形显示功能示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python读取csv文件示例(python操作csv)
Mar 11 Python
简单介绍Python下自己编写web框架的一些要点
Apr 29 Python
python使用xlrd实现检索excel中某列含有指定字符串记录的方法
May 09 Python
Python实现列表转换成字典数据结构的方法
Mar 11 Python
用python写一个windows下的定时关机脚本(推荐)
Mar 21 Python
python itchat实现微信好友头像拼接图的示例代码
Aug 14 Python
Python中pandas dataframe删除一行或一列:drop函数详解
Jul 03 Python
Python实现插入排序和选择排序的方法
May 12 Python
Python 使用Opencv实现目标检测与识别的示例代码
Sep 08 Python
Python 实现3种回归模型(Linear Regression,Lasso,Ridge)的示例
Oct 15 Python
在vscode中启动conda虚拟环境的思路详解
Dec 25 Python
简单谈谈Python面向对象的相关知识
Jun 28 Python
python自动发微信监控报警
Sep 06 #Python
Python使用Slider组件实现调整曲线参数功能示例
Sep 06 #Python
Python scipy的二维图像卷积运算与图像模糊处理操作示例
Sep 06 #Python
Python数学形态学实例分析
Sep 06 #Python
Python统计分析模块statistics用法示例
Sep 06 #Python
使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件及出现问题解决方法
Sep 06 #Python
python监控nginx端口和进程状态
Sep 06 #Python
You might like
允许phpmyadmin空密码登录的配置方法
2011/05/29 PHP
php文件怎么打开 如何执行php文件
2011/12/21 PHP
php 字符串压缩方法比较示例
2014/01/23 PHP
firefox插件Firebug的使用教程
2010/01/02 Javascript
锋利的jQuery 第三章章节总结的例子
2010/03/23 Javascript
js中根据字数截取字符串,不能截断url
2012/01/12 Javascript
jQuery之$(document).ready()使用介绍
2012/04/05 Javascript
js中substring和substr的详细介绍与用法
2013/08/29 Javascript
ExtJS的拖拽效果示例
2013/12/09 Javascript
javascript结合Canvas 实现简易的圆形时钟
2015/03/11 Javascript
javascript判断图片是否加载完成的方法推荐
2016/05/13 Javascript
layui结合form,table的全选、反选v1.0示例讲解
2018/08/15 Javascript
webpack proxy 使用(代理的使用)
2020/01/10 Javascript
Flexible.js可伸缩布局实现方法详解
2020/11/13 Javascript
vue中echarts的用法及与elementui-select的协同绑定操作
2020/11/17 Vue.js
[02:57]DOTA2英雄基础教程 风行者
2014/01/16 DOTA
编写Python脚本来获取mp3文件tag信息的教程
2015/05/04 Python
浅谈Python处理PDF的方法
2017/11/10 Python
python 为什么说eval要慎用
2019/03/26 Python
Python将文字转成语音并读出来的实例详解
2019/07/15 Python
简单了解python中的与或非运算
2019/09/18 Python
520使用Python实现“我爱你”表白
2020/05/20 Python
Python pysnmp使用方法及代码实例
2020/08/24 Python
HTML5 video播放器全屏(fullScreen)方法实例
2015/04/24 HTML / CSS
Intimissimi德国网上商店:意大利知名内衣品牌
2018/04/03 全球购物
在Java开发中如何选择使用哪种集合类
2016/08/09 面试题
艺术设计专业毕业生推荐信
2014/07/08 职场文书
医学专业大学生求职信
2014/07/12 职场文书
邓小平理论心得体会
2014/09/09 职场文书
党员自我剖析材料范文
2014/10/06 职场文书
乡镇务虚会发言材料
2014/10/20 职场文书
群众路线教育实践活动方案
2014/10/31 职场文书
2015年健康教育工作总结
2015/04/10 职场文书
幼儿园教师教育随笔
2015/08/14 职场文书
3招让你摆脱即兴讲话冷场尴尬
2019/08/08 职场文书
使用pipenv管理python虚拟环境的全过程
2021/09/25 Python