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登陆asp网站页面的实现代码
Jan 14 Python
Python多线程编程(八):使用Event实现线程间通信
Apr 05 Python
Python面向对象class类属性及子类用法分析
Feb 02 Python
python 读入多行数据的实例
Apr 19 Python
利用python画出折线图
Jul 26 Python
详解Python的循环结构知识点
May 20 Python
Django中celery执行任务结果的保存方法
Jul 12 Python
django 基于中间件实现限制ip频繁访问过程详解
Jul 30 Python
python3-flask-3将信息写入日志的实操方法
Nov 12 Python
Python调用C/C++的方法解析
Aug 05 Python
基于Python pyecharts实现多种图例代码解析
Aug 10 Python
利用Python函数实现一个万历表完整示例
Jan 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
php中cookie的作用域
2008/03/27 PHP
php使用json_encode对变量json编码
2014/04/07 PHP
ThinkPHP表单自动提交验证实例教程
2014/07/18 PHP
Ubuntu中搭建Nginx、PHP环境最简单的方法
2015/03/05 PHP
php文件操作之文件写入字符串、数组的方法分析
2019/04/15 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
2020/04/14 PHP
通过复制Table生成word和excel的javascript代码
2014/01/20 Javascript
基于JQuery实现的图片自动进行缩放和裁剪处理
2014/01/31 Javascript
jquery拖拽效果完整实例(附demo源码下载)
2016/01/14 Javascript
理解javascript异步编程
2016/01/27 Javascript
JQ选择器_选择同类元素的第N个子元素的实现方法
2016/09/08 Javascript
jQuery实现表格文本框淡入更改值后淡出效果
2016/09/27 Javascript
原生js实现网页顶部自动下拉/收缩广告效果
2017/01/20 Javascript
详谈表单格式化插件jquery.serializeJSON
2017/06/23 jQuery
浅谈react 同构之样式直出
2017/11/07 Javascript
你点的 ES6一些小技巧,请查收
2018/04/25 Javascript
浅谈layer的Icon样式以及一些常用的layer窗口使用方法
2019/09/11 Javascript
解决vue-cli项目开发运行时内存暴涨卡死电脑问题
2019/10/29 Javascript
three.js 如何制作魔方
2020/07/31 Javascript
python字符串的方法与操作大全
2018/01/30 Python
pycharm打开命令行或Terminal的方法
2019/01/16 Python
python实现多层感知器MLP(基于双月数据集)
2019/01/18 Python
如何将 awk 脚本移植到 Python
2019/12/09 Python
详解python itertools功能
2020/02/07 Python
Jupyter notebook无法导入第三方模块的解决方式
2020/04/15 Python
Python jieba结巴分词原理及用法解析
2020/11/05 Python
将SVG图引入到HTML页面的实现
2019/09/20 HTML / CSS
UGG澳洲官网:UGG Australia
2018/04/26 全球购物
自动化工程专业个人应聘自荐信
2013/09/26 职场文书
高级方案规划工程师岗位职责
2013/11/29 职场文书
"9.18"国耻日演讲稿范文
2014/09/14 职场文书
2015年母亲节活动总结
2015/02/10 职场文书
文明上网主题班会
2015/08/14 职场文书
redis通过6379端口无法连接服务器(redis-server.exe闪退)
2021/05/08 Redis
Python Pygame实战在打砖块游戏的实现
2022/03/17 Python
R9700摩机记
2022/04/05 无线电