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 相关文章推荐
30分钟搭建Python的Flask框架并在上面编写第一个应用
Mar 30 Python
Python连接数据库学习之DB-API详解
Feb 07 Python
python3实现抓取网页资源的 N 种方法
May 02 Python
Django在win10下的安装并创建工程
Nov 20 Python
Python之多线程爬虫抓取网页图片的示例代码
Jan 10 Python
详解Python中where()函数的用法
Mar 27 Python
和孩子一起学习python之变量命名规则
May 27 Python
pandas 选取行和列数据的方法详解
Aug 08 Python
Python常用模块logging——日志输出功能(示例代码)
Nov 20 Python
关于Pytorch MaxUnpool2d中size操作方式
Jan 03 Python
python读取hdfs并返回dataframe教程
Jun 05 Python
Django实现在线无水印抖音视频下载(附源码及地址)
May 06 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
人脸识别测颜值、测脸龄、测相似度微信接口
2016/04/07 PHP
yii2.0整合阿里云oss删除单个文件的方法
2017/09/19 PHP
PHP大文件分片上传的实现方法
2018/10/28 PHP
php curl获取https页面内容,不直接输出返回结果的设置方法
2019/01/15 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
文字幻灯片
2006/06/26 Javascript
js 弹出菜单/窗口效果
2011/10/30 Javascript
js中判断数字\字母\中文的正则表达式 (实例)
2012/06/29 Javascript
常用的几段javascript代码分享
2014/03/25 Javascript
jQuery on()方法使用技巧详解
2015/04/16 Javascript
jquery.form.js框架实现文件上传功能案例解析(springmvc)
2016/05/26 Javascript
Vuex之理解state的用法实例
2017/04/19 Javascript
angularjs封装$http为factory的方法
2017/05/18 Javascript
浅析JS中常用类型转换及运算符表达式
2017/07/23 Javascript
webpack中如何使用雪碧图的示例代码
2018/11/11 Javascript
详解django模板与vue.js冲突问题
2019/07/07 Javascript
JavaScript canvas实现雪花随机动态飘落
2020/02/08 Javascript
解决在Vue中使用axios POST请求变成OPTIONS的问题
2020/08/14 Javascript
解决js中的setInterval清空定时器不管用问题
2020/11/17 Javascript
python通过pil将图片转换成黑白效果的方法
2015/03/16 Python
python通过pil模块获得图片exif信息的方法
2015/03/16 Python
Python实现MySQL操作的方法小结【安装,连接,增删改查等】
2017/07/12 Python
Python入门学习指南分享
2018/04/11 Python
Python之lambda匿名函数及map和filter的用法
2019/03/05 Python
对PyQt5基本窗口控件 QMainWindow的使用详解
2019/06/19 Python
python解析命令行参数的三种方法详解
2019/11/29 Python
在pycharm中debug 实时查看数据操作(交互式)
2020/06/09 Python
天美时手表加拿大官网:Timex加拿大
2016/09/01 全球购物
Smashbox英国官网:美国知名彩妆品牌
2017/11/13 全球购物
C#面试题
2016/05/06 面试题
啤酒销售实习自我鉴定
2013/09/24 职场文书
村抢险救灾方案
2014/05/09 职场文书
留学经费担保书
2014/05/12 职场文书
安全生产宣传标语
2014/06/06 职场文书
Ajax常用封装库——Axios的使用
2021/05/08 Javascript
CSS 实现磨砂玻璃(毛玻璃)效果样式
2023/05/21 HTML / CSS