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实现在Linux系统下更改当前进程运行用户
Feb 04 Python
Python随手笔记之标准类型内建函数
Dec 02 Python
python安装模块如何通过setup.py安装(超简单)
May 05 Python
python二维列表一维列表的互相转换实例
Jul 02 Python
深入理解Django-Signals信号量
Feb 19 Python
利用python求积分的实例
Jul 03 Python
python数据预处理之数据标准化的几种处理方式
Jul 17 Python
Django中URL的参数传递的实现
Aug 04 Python
python使用PIL和matplotlib获取图片像素点并合并解析
Sep 10 Python
python爬虫中多线程的使用详解
Sep 23 Python
pyspark 随机森林的实现
Apr 24 Python
Python加密技术之RSA加密解密的实现
Apr 08 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 is_file()和is_dir()用于遍历目录时用法注意事项
2010/03/02 PHP
php木马webshell扫描器代码
2012/01/25 PHP
用PHP提取中英文词语以及数字的首字母的方法介绍
2013/04/23 PHP
smarty模板中拼接字符串的方法
2014/02/14 PHP
php自定义分页类完整实例
2015/12/25 PHP
详解WordPress开发中get_header()获取头部函数的用法
2016/01/08 PHP
php实现的中文分词类完整实例
2017/02/06 PHP
php curl操作API接口类完整示例
2019/05/21 PHP
jQuery滚动加载图片效果的实现
2013/03/06 Javascript
js获取当前路径的简单示例代码
2014/01/08 Javascript
jquery操作select大全
2014/04/25 Javascript
javascript类型转换示例
2014/04/29 Javascript
javascript获取和判断浏览器窗口、屏幕、网页的高度、宽度等
2014/05/08 Javascript
jQuery中:contains选择器用法实例
2014/12/30 Javascript
javascript时间差插件分享
2016/07/18 Javascript
Bootstrap栅格系统使用方法及页面调整变形的解决方法
2017/03/10 Javascript
vue-cli如何快速构建vue项目
2017/04/26 Javascript
jQuery简单绑定单个事件的方法示例
2017/06/10 jQuery
VUE+elementui面包屑实现动态路由详解
2019/11/04 Javascript
详解jQuery中的prop()使用方法
2020/01/05 jQuery
vue.js自定义组件实现v-model双向数据绑定的示例代码
2020/01/08 Javascript
使用python遍历指定城市的一周气温
2017/03/31 Python
Python将DataFrame的某一列作为index的方法
2018/04/08 Python
Python读取txt某几列绘图的方法
2018/10/14 Python
讲解Python3中NumPy数组寻找特定元素下标的两种方法
2019/08/04 Python
Python图片的横坐标汉字实例
2019/12/04 Python
Python 实现打印单词的菱形字符图案
2020/04/12 Python
通过代码实例了解Python异常本质
2020/09/16 Python
python定义具名元组实例操作
2021/02/28 Python
Html5移动端网页端适配(js+rem)
2021/02/03 HTML / CSS
单位人事专员介绍信
2014/01/11 职场文书
社区健康教育工作方案
2014/06/03 职场文书
班级标语大全
2014/06/21 职场文书
电气工程及其自动化专业毕业生自荐信
2014/06/21 职场文书
新年晚会开场白
2015/05/29 职场文书
解决Django transaction进行事务管理踩过的坑
2021/04/24 Python