1、Matplotlib库简介

优秀的可视化第三方库

Matplotlib库由各种可视化类构成,内部结构复杂,受Matlab启发

matplotlib.pyplot是绘制各类可视化图形的命令子库,相当于快捷方式

import matplotlib.pyplot as plt

(1)

import matplotlib.pyplot as plt
plt.plot([3,1,4,5,2])
plt.ylabel('grade')
plt.show()

plt.plot()只有一个输入列表或数组时,参数被当作Y轴,X轴以索引自动生成

(2)

import matplotlib.pyplot as plt
plt.plot([3,1,4,5,2])
plt.ylabel('grade')
plt.savefig('test_1',dpi=1000)
plt.show()

plt.savefig()将输出图形存储为文件,默认PNG格式,可以通过dpi修改输出质量

(3)

import matplotlib.pyplot as plt
plt.plot([0,2,4,6,8],[3,1,4,5,2])
plt.ylabel('grade')
plt.axis([-1,10,0,6])
plt.show()

plt.plot(x,y)当有两个以上参数时,按照X轴和Y轴顺序绘制数据点

plt.axis([a,b,c,d])坐标轴范围

2、pyplot的绘图区域

import numpy as np
import matplotlib.pyplot as plt def f(t):
return np.exp(-t)*np.cos(2*np.pi*t) a=np.arange(0,5,0.02) plt.subplot(211)
plt.plot(a,f(a)) plt.subplot(212)
plt.plot(a,np.cos(2*np.pi*a),'r--')#红色,虚线 plt.show()

3、pyplot的plot()函数

plt.plot(x, y, format_string, **kwargs)

x: x轴数据,列表或者数组,可选

y: y轴数据

format_string: 控制曲线的格式字符串,可选

**kwargs : 第二组或更多(x,y,format_string)

当绘制多条曲线时,各条曲线的x不能省略

import numpy as np
import matplotlib.pyplot as plt a=np.arange(0,5,0.2) plt.plot(a,a,'go-',a,1.5*a,'b-.',a,a*3,'yp') plt.show()

 

4、pyplot的中文显示

(1)pyplot并不默认支持中文显示,需要rcParams修改字体实现

import numpy as np
import matplotlib.pyplot as plt
import matplotlib matplotlib.rcParams['font.family']='STSong'
matplotlib.rcParams['font.size']=20 a=np.arange(0,5,0.02)
plt.plot(a,np.cos(2*np.pi*a),'r--')#红色,虚线
plt.xlabel('横轴:时间')
plt.ylabel('横轴:时间')
plt.show()

(2)在有中文输出的地方,增加一个属性:fontproperties

import numpy as np
import matplotlib.pyplot as plt a=np.arange(0,5,0.02)
plt.plot(a,np.cos(2*np.pi*a),'r--')#红色,虚线
plt.xlabel('横轴:时间',fontproperties='SimHei',fontsize=20)
plt.ylabel('横轴:时间',fontproperties='SimHei')
plt.show()

5、pyplot文本显示

import numpy as np
import matplotlib.pyplot as plt a=np.arange(0,5,0.02)
plt.plot(a,np.cos(2*np.pi*a),'r--')#红色,虚线
plt.xlabel('横轴:时间',fontproperties='SimHei',fontsize=20)
plt.ylabel('横轴:时间',fontproperties='SimHei')
plt.title(r'正弦波实例$y=cos(2\pi x)$',fontproperties='SimHei')#转义符pi
plt.text(2,1,r'$\mu=100$',fontsize=15) plt.axis([-1,6,-2,2])
plt.grid(True)
plt.show()

import numpy as np
import matplotlib.pyplot as plt a=np.arange(0,5,0.02)
plt.plot(a,np.cos(2*np.pi*a),'r--')#红色,虚线
plt.xlabel('横轴:时间',fontproperties='SimHei',fontsize=20)
plt.ylabel('横轴:时间',fontproperties='SimHei')
plt.title(r'正弦波实例$y=cos(2\pi x)$',fontproperties='SimHei')#转义符
#plt.text(2,1,r'$u=100$',fontsize=15)
plt.annotate(r'$\mu=100$',xy=(2,1),xytext=(3,1.5),
arrowprops=dict(facecolor='black',shrink=0.1,width=2))#0.1是箭头两边的余量 plt.axis([-1,6,-2,2])
plt.grid(True)
plt.show()

6、pyplot的子绘图区域

(1)plt.subplot2grid()

plt.subplot2grid(GridSpec, CurSpec, colspan=1, rowspan=1)

理念:设定网格,选中网格,确定选中行列区域数量,编号从0开始

plt.subplot2grid((3,3), (1,0), colspan=2)

plt.subplot2grid((3,3), (0,0), colspan=3)#列延伸三个
plt.subplot2grid((3,3), (1,0), colspan=2)
plt.subplot2grid((3,3), (2,0), colspan=1)
plt.subplot2grid((3,3), (2,1), colspan=1)
plt.subplot2grid((3,3), (1,2), rowspan=2)#行延伸两个

(2)GridSpec类

import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec gs=gridspec.GridSpec(3,3) plt.subplot(gs[0,:])
plt.subplot(gs[1,:-1])
plt.subplot(gs[1:,-1])
plt.subplot(gs[2,0])
plt.subplot(gs[2,1])

import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec gs=gridspec.GridSpec(3,3) plt.subplot(gs[0,0:3])
plt.subplot(gs[1,0:2])
plt.subplot(gs[1:3,-1])
plt.subplot(gs[2,0])
plt.subplot(gs[2,1])

Python——Matplotlib库入门的更多相关文章

  1. 数据分析与展示——Matplotlib库入门

    Matplotlib库入门 Matplotlib库介绍 Matliotlib库是Python优秀的数据可视化第三方库. Matliotlib库的效果见:http://matplotlib.org/ga ...

  2. 转:使用 python Matplotlib 库 绘图 及 相关问题

     使用 python Matplotlib 库绘图      转:http://blog.csdn.net/daniel_ustc/article/details/9714163 Matplotlib ...

  3. 安装python Matplotlib 库

    转:使用 python Matplotlib 库 绘图 及 相关问题  使用 python Matplotlib 库绘图      转:http://blog.csdn.net/daniel_ustc ...

  4. 机器学习 Matplotlib库入门

    2017-07-21 15:22:05 Matplotlib库是一个优秀的python的数据可视化的第三方类库,其中的pyplot支持了类似matlab的图像输出操作.matplotlib.pyplo ...

  5. Python——Pandas库入门

    一.Pandas库介绍 Pandas是Python第三方库,提供高性能易用数据类型和分析工具 import pandas as pd Pandas基于NumPy实现,常与NumPy和Matplotli ...

  6. 第二周 数据分析之展示 Matplotlib库入门

    Matplotlib库介绍:优秀的数据可视化第三方库 使用:Matplotlib库由各种可视化类构成,内部结构复杂,受Matlab启发,matplotlib.pyplot是绘制各类可视化图形的命令子库 ...

  7. Python Requests库入门——应用实例-百度、360搜索关键词提交

    百度的关键词接口: http://www.baidu.com/s?wd=keyword 360的关键词接口: http://www.so.com/s?q=keyword keyword就是需要查找的关 ...

  8. (转)使用 python Matplotlib 库绘图

    运行一个简单的程序例子: import matplotlib.pyplot as plt plt.plot([1,2,3]) plt.ylabel('some numbers') plt.show() ...

  9. Python matplotlib库

    安装日期:2017.9.7 版本不太清楚,为啥嘞? 从python2到python3,还有在学的tensorflow,版本一更新就会有之前的代码不能用了.学习的时候用别人的代码各种出错,查了半天发现那 ...

随机推荐

  1. 工作技术点小计14条 hybrid + animate 方向

    设置transition 动画的时候 , js直接设置duration 和 变化值不会起作用 , 需要先设置duration , 等一小会再设置变化值 安卓端 , 窗口不可见时 , window.in ...

  2. 前端每日实战:26# 视频演示如何用不到 50 行 CSS 代码,创作按钮被从纸上掀起的立体效果

    效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/KRbXGe 可交互视频教程 此视频 ...

  3. JZOJ 3928. 【NOIP2014模拟11.6】射击

    3928. [NOIP2014模拟11.6]射击 (Standard IO) Time Limits: 1000 ms Memory Limits: 65536 KB Description 有问题, ...

  4. 获取的ajax方法return的返回值的问题解析

    今天刚上班就偶遇关于获取Ajax方法return的返回值的问题,这里小记一下. 在使用jquery中,如果获取不到ajax返回值,原因有二: 一.ajax未使用同步 ajax未使用同步,导致数据未加载 ...

  5. XCTF---easyjava的WriteUp

    一.题目来源     题目来源:XCTF题库安卓区easyjava     题目下载链接:下载地址 二.解题过程     1.将该apk安装进夜神模拟器中,发现有一个输入框和一个按钮,随便输入信息,点 ...

  6. css3特性简要概括

    ---恢复内容开始--- css3新增核心知识 背景和边框 文本效果 2d/3d转换 过渡和动画 多列布局 弹性盒模型 媒体查询 增强选择器 css3浏览器兼容性 css3在线工具 css3gener ...

  7. C结构体与链表

    今天来总结C语言的学习盲点--结构体,为了不显单一,也为了补足作者链表的编程缺陷,特更此博文,总结近段时间的学习成果.话不多说,先上一段代码 struct none{int item; link ne ...

  8. Js中的For循环详解

    大家好,我是逆战班的一员,今天给大家讲解一下Js循环中的For循环. For循环是JS循环中一个非常重要的部分. 我们先讲一下for循环的作用: For循环用在需要重复执行的某些代码,比如从1打印到1 ...

  9. Journal of Proteome Research | Prediction of an Upper Limit for the Fraction of Interprotein Cross-Links in Large-Scale In Vivo Cross-Linking Studies (分享人:张宇星)

    题目:Prediction of an Upper Limit for the Fraction of Interprotein Cross-Links in Large-Scale In Vivo ...

  10. POJ1270 toposort+DFS+回溯

    题目链接:http://poj.org/problem?id=1270 这道题其实就是求所有满足条件的topo序,我们考虑到给定的字符是确定的,也就是他们的长度都是一样的,所以为了得到所有的情况,我们 ...