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 相关文章推荐
Python中的类与对象之描述符详解
Mar 27 Python
python通过索引遍历列表的方法
May 04 Python
开始着手第一个Django项目
Jul 15 Python
Python实现的Excel文件读写类
Jul 30 Python
浅谈function(函数)中的动态参数
Apr 30 Python
Python方法的延迟加载的示例代码
Dec 18 Python
对django layer弹窗组件的使用详解
Aug 31 Python
Python参数传递实现过程及原理详解
May 14 Python
python实现简单的tcp 文件下载
Sep 16 Python
python 如何设置守护进程
Oct 29 Python
python使用正则表达式匹配txt特定字符串(有换行)
Dec 09 Python
Python爬虫之爬取二手房信息
Apr 27 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
PHP中PDO连接数据库中各种DNS设置方法小结
2016/05/13 PHP
php利用header函数下载各种文件
2016/08/24 PHP
PHP Socket网络操作类定义与用法示例
2017/08/30 PHP
在次封装easyui-Dialog插件实现代码
2010/11/14 Javascript
基于jquery的滚动鼠标放大缩小图片效果
2011/10/27 Javascript
jQuery 翻牌或百叶窗效果(内容三秒自动切换)
2012/06/14 Javascript
跟我学Nodejs(二)--- Node.js事件模块
2014/05/21 NodeJs
D3.js 从P元素的创建开始(显示可加载数据)
2014/10/30 Javascript
Javascript前端UI框架Kit使用指南之kitjs的对话框组件
2014/11/28 Javascript
浅析Node.js中使用依赖注入的相关问题及解决方法
2015/06/24 Javascript
基于OL2实现百度地图ABCD marker的效果
2015/10/01 Javascript
JS加载器如何动态加载外部js文件
2016/05/26 Javascript
AngularJS基础 ng-keyup 指令简单示例
2016/08/02 Javascript
关于JSON与JSONP简单总结
2016/08/16 Javascript
jQuery实现的导航下拉菜单效果示例
2016/09/05 Javascript
jQueryUI Datepicker组件设置日期高亮
2016/10/13 Javascript
Bootstrap导航条可点击和鼠标悬停显示下拉菜单
2016/11/25 Javascript
Django1.7+JQuery+Ajax验证用户注册集成小例子
2017/04/08 jQuery
Javascript实现时间倒计时效果
2017/07/15 Javascript
关于Angularjs中自定义指令一些有价值的细节和技巧小结
2018/04/22 Javascript
详解Jest结合Vue-test-utils使用的初步实践
2019/06/27 Javascript
Sublime Text3 配置 NodeJs 环境的方法
2020/05/20 NodeJs
JavaScript 中的六种循环方法
2021/01/06 Javascript
Python socket.error: [Errno 98] Address already in use的原因和解决方法
2014/08/25 Python
Windows系统下安装Python的SSH模块教程
2015/02/05 Python
解决Linux系统中python matplotlib画图的中文显示问题
2017/06/15 Python
详解django的serializer序列化model几种方法
2018/10/16 Python
Python + selenium + requests实现12306全自动抢票及验证码破解加自动点击功能
2018/11/23 Python
Python 继承,重写,super()调用父类方法操作示例
2019/09/29 Python
Pytorch实现的手写数字mnist识别功能完整示例
2019/12/13 Python
pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解
2020/01/03 Python
Pytorch技巧:DataLoader的collate_fn参数使用详解
2020/01/08 Python
瑞典的玛丽小姐:Miss Mary of Sweden
2019/02/13 全球购物
优秀团队获奖感言
2014/02/19 职场文书
现场施工员岗位职责
2015/04/11 职场文书
怎样做好公众演讲能力?
2019/08/28 职场文书