Python数据可视化案例一:自定义曲线频率、颜色与线型
下面的代码运行后,可以通过左侧的三组单选钮来设置正弦曲线的频率、颜色和线型,并根据新的设置来绘制正弦曲线,每次单击图形下方的按钮,由系统随机设置频率、颜色和线型并绘制新图形,同时根据随机选择的值来设置三组单选钮的选中项。
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小屋”进入公众号,关注后可以查看更多内容!
Python数据可视化案例一:自定义曲线频率、颜色与线型相关推荐
- Python数据可视化案例三:使用Slider组件调整曲线参数
首先更正一个地方,昨天的文章Pythonic:递归.回溯等5种方法生成不重复数字整数中最后一段代码的注释中不小心把"排列"写成了"组合",抱歉抱歉! 今天的内容 ...
- Python数据可视化案例二:动态更新数据
在开发与数据监测和数据可视化有关的系统时,我们会需要根据最新的数据对图形进行更新.下面的代码模拟了这种情况,单击Start按钮时会更新数据并重新绘制图形使得曲线看上去在移动一样,单击Stop按钮则停止 ...
- python数据可视化案例销售数据_3-5 用python进行数据可视化 朝阳医院销售案例
本篇是3-2-2数据分析文章的扩展版.spoonhead:3-3-2 Python数据分析实战第一步zhuanlan.zhihu.com 本文在原文章的基础上提出了问题4-问题8的5个新问题,并用m ...
- python数据可视化案例2017年6省gdp_吴裕雄 数据挖掘与分析案例实战(5)——python数据可视化...
# 饼图的绘制 # 导入第三方模块 import matplotlib import matplotlib.pyplot as plt plt.rcParams['font.sans-serif']= ...
- python数据可视化案例 淘宝粽子_Python分析淘宝月饼销售数据,哪种最受欢迎?排第一的你想不到...
距离国庆中秋8天的假期没几天了,朋友圈各家大厂都开始秀自家定制的中秋月饼礼盒,假期要走亲访友的手里也少不了要提一盒月饼. 每年中秋节到,总会去姥姥那里送中秋,并买上各种各样的月饼,那个时候科技并不怎么 ...
- python数据可视化案例销售数据_Python数据可视化教程之Matplotlib实现各种图表实例...
前言 数据分析就是将数据以各种图表的形式展现给领导,供领导做决策用,因此熟练掌握饼图.柱状图.线图等图表制作是一个数据分析师必备的技能.Python有两个比较出色的图表制作框架,分别是Matplotl ...
- python数据可视化案例 淘宝粽子_Python可视化对比分析淘宝低价人群和匿名用户的淘宝连衣裙数据...
1.我是一个低价人群用户 上周发表文章<一个匿名用户的淘宝"连衣裙"大观>后,交流群里面很热闹地讨论了起来,小伙伴们都在秀自己的淘宝连衣裙搜索价格,相较于小伙伴们搜索出 ...
- python爬虫数据可视化_适用于Python入门者的爬虫和数据可视化案例
本篇文章适用于Python小白的教程篇,如果有哪里不足欢迎指出来,希望对你帮助. 本篇文章用到的模块: requests,re,os,jieba,glob,json,lxml,pyecharts,he ...
- python数据可视化散点图案例_Python数据可视化—散点图_python 数据可视化
Python数据可视化-散点图 PS: 翻了翻草稿箱, 发现居然存了一篇去年2月的文章...虽然naive,还是发出来吧... 本文记录了Python中的数据可视化--散点图scatter, 令x作为 ...
最新文章
- 最全的Centos6.10详细安装Oracle 11G R2图文教程
- Spring Cloud Stream消费失败后的处理策略(一):自动重试
- 沉浸式技术immersive technology
- Apache Shiro实现用户登录功能
- [机械]“重工业面临两大危机”——向文波(三一重工股份有限公司执行总裁)
- 边缘计算 ai_在边缘探索AI!
- 最实用DOS命令参数的中文详解
- Python3 Tcp未发送/接收完数据即被RST处理办法
- python中排序从小到大_Python实现对特定列表进行从小到大排序操作示例
- mysql中名词解析
- VS2008 sp1中文版下载地址
- 读书笔记:《产品经理手册》(第4版)
- android版本下载京东,手机京东历史版本
- MATLAB中神经网络工具箱的使用
- [半决赛魔咒] 那些罚失点球的人,恰恰是那些有勇气站在点球前的人。。
- 小程序、容器、SCF、直播加速…最全面的云端架构技术揭秘
- win7 正式版安装成功,贴图得瑟一下
- 09高考零分作文精选
- LabVIEW使用VI Server的时候出现1003错误
- PMP中工具与技术归类
热门文章
- mysql怎么换引擎_如何更换MySQL默认存储引擎
- 鸿蒙历程和路标图,华为鸿蒙OS:为生态而生,亦为生态所累
- 插入排序算法 java_排序算法实现-插入排序(Java版本)
- eclipse中自定义videoview类_android控件之VideoView建立自己的播放器
- Oracle 非dba用户 使用 set autotrace 功能
- 代码刚提交暂存区,组长突然要我把新增代码 Commit另一分支怎么办?
- jsp点击文字改变颜色_这样给图片添加上文字、诗词、歌词,超吸睛
- Redis缓存穿透、缓存雪崩、并发问题分析与解决方案
- 判断字符串最后两个字符
- js判断数组中有没有指定元素