matplotlib阶梯图的实现(step())


Posted in Python onMarch 02, 2021

step函数概述

step函数用于绘制阶梯图。

根据源码可知,step函数是对plot函数的轻量级封装,很多概念和用法与plot函数非常相似。

def step(self, x, y, *args, where='pre', data=None, **kwargs):
 cbook._check_in_list(('pre', 'post', 'mid'), where=where)
 kwargs['drawstyle'] = 'steps-' + where
 return self.plot(x, y, *args, data=data, **kwargs)

step函数签名:

matplotlib.pyplot.step(x, y, *args, where='pre', data=None, **kwargs)

step函数调用签名:

step(x, y, [fmt], *, data=None, where='pre', **kwargs)
step(x, y, [fmt], x2, y2, [fmt2], ..., *, where='pre', **kwargs)

其中:

  • x:类数组结构,一维x轴坐标序列。一般假设x轴坐标均匀递增。必备参数。
  • y:类数组结构,一维y轴坐标序列。必备参数。
  • fmt:格式字符串,与plot函数的fmt参数类似。可选参数。官方建议只设置颜色格式。
  • data:可索引数据,类似于plot函数。可选参数。
  • **kwargs:类似于plot函数。
  • where :设置阶梯所在位置,取值范围为{'pre', 'post', 'mid'},默认值为'pre'。

 案例:使用step函数和plot函数演示不同where参数的效果

通过案例可知,step函数可以认为是plot函数绘制阶梯图的一个特例。

matplotlib阶梯图的实现(step())

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(14)
y = np.sin(x / 2)

plt.figure(figsize=(12,5))
plt.subplot(121)
plt.step(x, y + 2, label='pre (default)')
plt.plot(x, y + 2, 'o--', color='grey', alpha=0.3)

plt.step(x, y + 1, where='mid', label='mid')
plt.plot(x, y + 1, 'o--', color='grey', alpha=0.3)

plt.step(x, y, where='post', label='post')
plt.plot(x, y, 'o--', color='grey', alpha=0.3)

plt.grid(axis='x', color='0.95')
plt.legend(title='Parameter where:')
plt.title('plt.step(where=...)')

plt.subplot(122)
plt.plot(x, y + 2, drawstyle='steps', label='steps (=steps-pre)')
plt.plot(x, y + 2, 'o--', color='grey', alpha=0.3)

plt.plot(x, y + 1, drawstyle='steps-mid', label='steps-mid')
plt.plot(x, y + 1, 'o--', color='grey', alpha=0.3)

plt.plot(x, y, drawstyle='steps-post', label='steps-post')
plt.plot(x, y, 'o--', color='grey', alpha=0.3)

plt.grid(axis='x', color='0.95')
plt.legend(title='Parameter drawstyle:')
plt.title('plt.plot(drawstyle=...)')
plt.show()

到此这篇关于matplotlib阶梯图的实现(step())的文章就介绍到这了,更多相关matplotlib 阶梯图内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
使用go和python递归删除.ds store文件的方法
Jan 22 Python
Python正则替换字符串函数re.sub用法示例
Jan 19 Python
Python生成随机数组的方法小结
Apr 15 Python
详解Python nose单元测试框架的安装与使用
Dec 20 Python
微信跳一跳自动运行python脚本
Jan 08 Python
解决python爬虫中有中文的url问题
May 11 Python
基于Python实现迪杰斯特拉和弗洛伊德算法
May 27 Python
Python获取网段内ping通IP的方法
Jan 31 Python
Python实现图片裁剪的两种方式(Pillow和OpenCV)
Oct 30 Python
python 实现Harris角点检测算法
Dec 11 Python
解决Pytorch半精度浮点型网络训练的问题
May 24 Python
教你使用一行Python代码玩遍童年的小游戏
Aug 23 Python
Python读写Excel表格的方法
Mar 02 #Python
Python绘制K线图之可视化神器pyecharts的使用
Mar 02 #Python
python中Pexpect的工作流程实例讲解
Mar 02 #Python
Opencv 图片的OCR识别的实战示例
Mar 02 #Python
python实现控制台输出颜色
Mar 02 #Python
python 如何在测试中使用 Mock
Mar 01 #Python
python装饰器代码深入讲解
Mar 01 #Python
You might like
收音机史话 - 1960年代前后的DIY
2021/03/02 无线电
phpmyadmin 常用选项设置详解版
2010/03/07 PHP
实例介绍PHP的Reflection反射机制
2014/08/05 PHP
laravel实现按月或天或小时统计mysql数据的方法
2019/10/09 PHP
js form action动态修改方法
2008/11/04 Javascript
jquery nth-child()选择器的简单应用
2010/07/10 Javascript
jquery.Jwin.js 基于jquery的弹出层插件代码
2012/05/23 Javascript
基于jQuery的动态增删改查表格信息,可左键/右键提示(原创自Zjmainstay)
2012/07/31 Javascript
解析javascript系统错误:-1072896658的解决办法
2013/07/08 Javascript
JavaScript中的splice()方法使用详解
2015/06/09 Javascript
浅谈Javascript中的函数、this以及原型
2016/10/09 Javascript
JS日程管理插件FullCalendar中文说明文档
2017/02/06 Javascript
javascript事件的绑定基础实例讲解(34)
2017/02/14 Javascript
Bootstrap modal 多弹窗之叠加关闭阴影遮罩问题的解决方法
2017/02/27 Javascript
vuex的简单使用教程
2018/02/02 Javascript
浅谈Vue Element中Select下拉框选取值的问题
2018/03/01 Javascript
JS编写兼容IE6,7,8浏览器无缝自动轮播
2018/10/12 Javascript
[03:30]完美盛典趣味短片 CSGO2019年度名场面
2019/12/07 DOTA
web.py获取上传文件名的正确方法
2014/08/26 Python
Python的Django框架中的数据库配置指南
2015/07/17 Python
bpython 功能强大的Python shell
2016/02/16 Python
Python实现接受任意个数参数的函数方法
2018/04/21 Python
python操作excel文件并输出txt文件的实例
2018/07/10 Python
解决Python找不到ssl模块问题 No module named _ssl的方法
2019/04/29 Python
浅谈Python2之汉字编码为unicode的问题(即类似\xc3\xa4)
2019/08/12 Python
全球速卖通西班牙站:AliExpress西班牙
2017/10/30 全球购物
Bally巴利英国官网:经典瑞士鞋履、手袋及配饰奢侈品牌
2018/05/07 全球购物
枚举与#define宏的区别
2014/04/30 面试题
小学一年级学生评语
2014/04/22 职场文书
金融专业毕业生自荐信
2014/06/26 职场文书
党的生日演讲稿
2014/09/10 职场文书
乡镇党员干部四风对照检查材料思想汇报
2014/09/27 职场文书
2014年人民警察入党思想汇报
2014/10/12 职场文书
2014年协会工作总结
2014/11/22 职场文书
使用compose函数优化代码提高可读性及扩展性
2022/06/16 Javascript
MySQL常用慢查询分析工具详解
2022/08/14 MySQL