Python使用matplotlib实现基础绘图功能示例


Posted in Python onJuly 03, 2018

本文实例讲述了Python使用matplotlib实现基础绘图功能。分享给大家供大家参考,具体如下:

一个简单的例子

# -*- coding:utf-8 -*-
#!python3
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0,10,101)  #设置起始及终点,以及点的数量
y = np.sin(x)        #调用numpy库的sin函数
z = np.cos(x**2)
plt.figure(figsize=(8,6))  #设置图像的大小
plt.plot(x,y,label="$y=sin(x)$",color = "red",linewidth=2)      #设置图像属性,$表示将公式格式化
plt.plot(x,z,label="$y=cos(x**2)$")
plt.xlabel("Times/s")    #设置图像的横纵坐标的名称及单位
plt.ylabel("Volt/v")
plt.title("Demo")
plt.ylim(-1.2,1.2) #设置y的范围
plt.legend()
plt.show()         #显示图像

运行以上程序,得如下图所示的曲线:

Python使用matplotlib实现基础绘图功能示例

plot函数的调用方式很灵活,

plt.plot(x,y,label="$y=sin(x)$",color = "red",linewidth=2)将x,y数组传递给plot之后,用关键字参数指定各种属性:

  • label : 给所绘制的曲线一个名字,此名字在图示(legend)中显示。只要在字符串前后添加”$”符号,matplotlib就会使用其内嵌的latex引擎绘制的数学公式。
  • color : 指定曲线的颜色
  • linewidth : 指定曲线的宽度
  • xlabel: 设置x轴的文字
  • ylabel: 设置y轴的文字
  • title:设置图表标题
  • ylim:设置y轴的范围
  • legend:显示图示
  • show():显示所有图像

绘制多轴图

可以理解为在一个绘图区域绘制多个子图。调用函数为subplot(numRows, numCols, plotNum)

subplot将整个绘图区域等分为numRows行 * numCols列个子区域,然后按照从左到右,从上到下的顺序对每个子区域进行编号,左上的子区域的编号为1。如果numRows,numCols和plotNum这三个数都小于10的话,可以把它们缩写为一个整数,例如subplot(323)和subplot(3,2,3)是相同的。subplot在plotNum指定的区域中创建一个轴对象。如果新创建的轴和之前创建的轴重叠的话,之前的轴将被删除。

例如以下程序可以将绘图空间分成颜色不同的六份:

# -*- coding:utf-8 -*-
#!python3
import matplotlib.pyplot as plt
for idx, color in enumerate("rgbyck"):
  plt.subplot(320+idx+1, axisbg=color)
plt.show()

运行效果:

Python使用matplotlib实现基础绘图功能示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python ORM框架SQLAlchemy学习笔记之数据添加和事务回滚介绍
Jun 10 Python
深入解析Python中函数的参数与作用域
Mar 20 Python
python八皇后问题的解决方法
Sep 27 Python
Python操作MySQL数据库的两种方式实例分析【pymysql和pandas】
Mar 18 Python
Python秒算24点实现及原理详解
Jul 29 Python
python3 selenium自动化 frame表单嵌套的切换方法
Aug 23 Python
Pycharm debug调试时带参数过程解析
Feb 03 Python
浅谈python 调用open()打开文件时路径出错的原因
Jun 05 Python
Python devel安装失败问题解决方案
Jun 09 Python
Python3爬虫中pyspider的安装步骤
Jul 29 Python
python如何爬取动态网站
Sep 09 Python
OpenCV-Python实现图像平滑处理操作
Jun 08 Python
Pandas 同元素多列去重的实例
Jul 03 #Python
Python中Numpy包的安装与使用方法简明教程
Jul 03 #Python
Python单元测试简单示例
Jul 03 #Python
Python3使用pandas模块读写excel操作示例
Jul 03 #Python
Python+pandas计算数据相关系数的实例
Jul 03 #Python
在dataframe两列日期相减并且得到具体的月数实例
Jul 03 #Python
python设置值及NaN值处理方法
Jul 03 #Python
You might like
JavaScript创建命名空间的5种写法
2014/06/24 PHP
PHP实现求连续子数组最大和问题2种解决方法
2017/12/26 PHP
Laravel如何使用Redis共享Session
2018/02/23 PHP
PHP笛卡尔积实现算法示例
2018/07/30 PHP
javascript编程起步(第一课)
2007/01/10 Javascript
js 替换功能函数,用正则表达式解决,js的全部替换
2010/12/08 Javascript
JavaScript闭包实例讲解
2014/04/22 Javascript
javascript显式类型转换实例分析
2015/04/25 Javascript
js实现将选中值累加到文本框的方法
2015/08/12 Javascript
JS中使用变量保存arguments对象的方法
2016/06/03 Javascript
JavaScript“尽快失败”的原则实例详解
2016/10/08 Javascript
Bootstrap CSS组件之输入框组
2016/12/17 Javascript
基于vue-cli3创建libs库的实现方法
2019/12/04 Javascript
微信小程序返回上一级页面的实现代码
2020/06/19 Javascript
Postman内建变量常用方法实例解析
2020/07/28 Javascript
[13:21]DOTA2国际邀请赛采访专栏:RSnake战队国士无双,Fnatic.Fly
2013/08/06 DOTA
python+mysql实现简单的web程序
2014/09/11 Python
Python提示[Errno 32]Broken pipe导致线程crash错误解决方法
2014/11/19 Python
解决Django模板无法使用perms变量问题的方法
2017/09/10 Python
Python基于高斯消元法计算线性方程组示例
2018/01/17 Python
浅谈Python中的私有变量
2018/02/28 Python
数据清洗--DataFrame中的空值处理方法
2018/07/03 Python
django-allauth入门学习和使用详解
2019/07/03 Python
python实现从ftp服务器下载文件
2020/03/03 Python
Python开发企业微信机器人每天定时发消息实例
2020/03/17 Python
使用python实现飞机大战游戏
2020/03/23 Python
Python导入模块包原理及相关注意事项
2020/03/25 Python
Python flask框架实现浏览器点击自定义跳转页面
2020/06/04 Python
css3的过滤效果简单实例
2016/08/03 HTML / CSS
data:image data url 文件转为Blob上传后端的方法
2019/07/16 HTML / CSS
编程用JAVA解析XML的方式
2013/07/07 面试题
高中毕业生自我鉴定例文
2013/12/29 职场文书
会议邀请函范文
2014/01/09 职场文书
旅游管理毕业生自荐信范文
2014/03/19 职场文书
学雷锋标兵事迹材料
2014/08/18 职场文书
Python提取PDF指定内容并生成新文件
2021/06/09 Python