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 数据加密代码
Dec 24 Python
python中List的sort方法指南
Sep 01 Python
用Python实现命令行闹钟脚本实例
Sep 05 Python
Python自动生产表情包
Mar 17 Python
Python获取Redis所有Key以及内容的方法
Feb 19 Python
python笔记_将循环内容在一行输出的方法
Aug 08 Python
初次部署django+gunicorn+nginx的方法步骤
Sep 11 Python
服务器端jupyter notebook映射到本地浏览器的操作
Apr 14 Python
使用PyQt5实现图片查看器的示例代码
Apr 21 Python
使用keras根据层名称来初始化网络
May 21 Python
Python学习之os模块及用法
Jun 03 Python
Matlab求解数组中的最大值及它所在的具体位置
Apr 16 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
php,不用COM,生成excel文件
2006/10/09 PHP
PHP JSON出错:Cannot use object of type stdClass as array解决方法
2014/08/16 PHP
PHP中Socket连接及读写数据超时问题分析
2016/07/19 PHP
Yii CDBCriteria常用方法实例小结
2017/01/19 PHP
获取任意Html元素与body之间的偏移距离 offsetTop、offsetLeft (For:IE5+ FF1 )[
2006/12/22 Javascript
封装好的省市地区联动控件附下载
2007/08/13 Javascript
前台js对象在后台转化java对象的问题探讨
2013/12/20 Javascript
javascript 模拟坦克大战游戏(html5版)附源码下载
2014/04/08 Javascript
用js替换除数字与逗号以外的所有字符的代码
2014/06/07 Javascript
教你如何使用node.js制作代理服务器
2014/11/26 Javascript
jQuery取得iframe中元素的常用方法详解
2016/01/14 Javascript
基于javascript bootstrap实现生日日期联动选择
2016/04/07 Javascript
JS控制静态页面传递参数并获取参数应用
2016/08/10 Javascript
jQuery Easyui Datagrid实现单行的上移下移及保存移动的结果
2016/08/15 Javascript
vue.js实现表格合并示例代码
2016/11/30 Javascript
使用bat打开多个cmd窗口执行gulp、node
2017/02/17 Javascript
js实现彩色条纹滚动条效果
2017/03/15 Javascript
详解angular 中的自定义指令之详解API
2017/06/20 Javascript
深入掌握 react的 setState的工作机制
2017/09/27 Javascript
webpack4.x打包过程详解
2018/07/18 Javascript
深入理解 TypeScript Reflect Metadata
2019/12/12 Javascript
[03:55]2014DOTA2国际邀请赛 Fnatic经理采访赢DK在情理之中
2014/07/10 DOTA
用Python登录Gmail并发送Gmail邮件的教程
2015/04/17 Python
Python进程间通信之共享内存详解
2017/10/30 Python
python学习基础之循环import及import过程
2018/04/22 Python
Python模拟浏览器上传文件脚本的方法(Multipart/form-data格式)
2018/10/22 Python
如何使用python操作vmware
2019/07/27 Python
python修改文件内容的3种方法详解
2019/11/15 Python
Python使用xlrd实现读取合并单元格
2020/07/09 Python
python一些性能分析的技巧
2020/08/30 Python
html5 利用canvas实现超级玛丽简单动画
2013/09/06 HTML / CSS
小学生学习感言
2014/03/10 职场文书
爱国卫生月活动总结范文
2014/04/25 职场文书
10的分与合教学反思
2014/04/30 职场文书
优秀校长事迹材料
2014/12/24 职场文书
LeetCode189轮转数组python示例
2022/08/05 Python