数据分析与展示---Matplotlib入门
简介:
一:Matplotlib库的介绍
(一)简单使用
二:区域划分subplot
三:plot函数
四:pyplot的中文显示
(一)方法一:修改rcParams参数
(二)方法二(推荐),在有中文地方增加属性:fontproperties
五:pyplot的文本显示方法
六:pyplot的子绘图区域
(一)subplot2grid()
(二)GridSpec类加上subplot方法
一:Matplotlib库的介绍


(一)简单使用
import matplotlib.pyplot as plt plt.plot([,,,,])
plt.ylabel("grade")
plt.show()

import matplotlib.pyplot as plt plt.plot([,,,,])
plt.ylabel("grade")
plt.savefig("test",dip=) #png文件,dpi修改输出质量
plt.show()

import matplotlib.pyplot as plt plt.plot([,,,,],[,,,,]) #第一个列表是x轴列表,第二个是y轴列表
plt.ylabel("grade")
plt.axis([-,,,]) #前两个是x轴的取值范围-1到10,后两个是y轴取值范围0-6
plt.show()

二:区域划分subplot

注意:划分区域可以不使用','
import matplotlib.pyplot as plt
import numpy as np def f(t):
return np.exp(-t)*np.cos(*np.pi*t) #衰减曲线 a = np.arange(0.0,5.0,0.02) plt.subplot() #划分为两行一列,选取第一个区域
plt.plot(a,f(a)) #绘制衰减曲线 plt.subplot(,,) #在将绘图区域换到整个绘图区域的第二个,自动切换
plt.plot(a,np.cos(*np.pi*a),'r--') #绘制余弦曲线 plt.show()

三:plot函数

import matplotlib.pyplot as plt
import numpy as np a = np.arange() plt.plot(a,a*1.5,a,a*2.5,a,a*3.5,a,a*4.5) #每两个是一条曲线
plt.show()

当我们不选择线条形状为空时,可以变为其他非线性图
import numpy as np
import matplotlib.pyplot as plt ax = plt.subplot()
ax.plot(*np.random.randn(),*np.random.randn(),'o')
ax.set_title("Simple Scatter") plt.show()

如何控制颜色等曲线属性:通过参数format_string



import matplotlib.pyplot as plt
import numpy as np a = np.arange() plt.plot(a,a*1.5,'go-',a,a*2.5,'rx',a,a*3.5,'*',a,a*4.5,'b-.')
plt.show()


四:pyplot的中文显示
(一)方法一:修改rcParams参数

import matplotlib.pyplot as plt
import matplotlib matplotlib.rcParams['font.family']='SimHei' plt.plot([,,,,],[,,,,])#第一个列表是x轴列表,第二个是y轴列表
plt.ylabel("纵向轴") #默认是不允许中文,会报错
plt.axis([-,,,]) #前两个是x轴的取值范围-1到10,后两个是y轴取值范围0-
plt.show()



import matplotlib.pyplot as plt
import numpy as np
import matplotlib matplotlib.rcParams['font.family'] = "SimHei"
matplotlib.rcParams['font.size'] = a = np.arange(0.0,5.0,0.02) plt.xlabel("横轴:时间")
plt.ylabel("纵轴:振幅")
plt.plot(a,np.cos(*np.pi*a),'r--') plt.show()

(二)方法二(推荐),在有中文地方增加属性:fontproperties
import matplotlib.pyplot as plt
import numpy as np a = np.arange(0.0,5.0,0.02) plt.xlabel("横轴:时间",fontproperties="SimHei",fontsize=)
plt.ylabel("纵轴:振幅",fontproperties="SimHei",fontsize=)
plt.plot(a,np.cos(*np.pi*a),'r--') plt.show()

五:pyplot的文本显示方法

import matplotlib.pyplot as plt
import numpy as np a = np.arange(0.0,5.0,0.02)
plt.plot(a,np.cos(*np.pi*a),'r--') plt.xlabel("横轴:时间",fontproperties="SimHei",fontsize=,color="green")
plt.ylabel("纵轴:振幅",fontproperties="SimHei",fontsize=)
plt.title(r'正弦波实例 $cons(2\pi x)$',fontproperties="SimHei",fontsize=)
plt.text(,,r'$\mu=100$',fontsize=) #2 1 是横纵坐标 plt.axis([-,,-,])
plt.grid(True)
plt.show()


plt.annotate(r"$\mu=100$",xy=(,),xytext=(,1.5),arrowprops=dict(facecolor="black",shrink=0.1,width=)) #shrink是箭头两边到图像,文字之间的间隔(相对于箭头的比例)

六:pyplot的子绘图区域
上面使用了subplot进行了简单的区域划分,下面考虑复杂的绘图区域的划分

(一)subplot2grid()



(二)GridSpec类加上subplot方法

总结


数据分析与展示---Matplotlib入门的更多相关文章
- 数据分析与展示——Matplotlib库入门
Matplotlib库入门 Matplotlib库介绍 Matliotlib库是Python优秀的数据可视化第三方库. Matliotlib库的效果见:http://matplotlib.org/ga ...
- 第二周 数据分析之展示 Matplotlib库入门
Matplotlib库介绍:优秀的数据可视化第三方库 使用:Matplotlib库由各种可视化类构成,内部结构复杂,受Matlab启发,matplotlib.pyplot是绘制各类可视化图形的命令子库 ...
- 数据分析与展示——Matplotlib基础绘图函数示例
Matplotlib库入门 Matplotlib基础绘图函数示例 pyplot基础图表函数概述 函数 说明 plt.plot(x,y,fmt, ...) 绘制一个坐标图 plt.boxplot(dat ...
- 数据分析与展示---Matplotlib基本绘图函数
一:基本绘图函数(这里介绍16个,还有许多其他的) 二:pyplot饼图plt.pie的绘制 三:pyplot直方图plt.hist的绘制 (一)修改第二个参数bins:代表直方图的个数,均分为多段, ...
- 第二周 数据分析之展示 Matplotlib基础绘图函数实例
Pyplot基础图表函数 Pyplot饼图的绘制: Pyplot直方图的绘制: Pyplot极坐标图的绘制: Pyplot散点图的绘制: 单元小结: import numpy as np import ...
- 数据分析与展示---Numpy入门
概括: 一:数据维度 (一)一维数据 (二)二维数据 (三)多维数据 (四)高维数据 二:Numpy的数组对象:ndarray (一)Numpy介绍 (二)N维数组对象ndarray (三)ndarr ...
- 数据分析与展示——NumPy库入门
这是我学习北京理工大学嵩天老师的<Python数据分析与展示>课程的笔记.嵩老师的课程重点突出.层次分明,在这里特别感谢嵩老师的精彩讲解. NumPy库入门 数据的维度 维度是一组数据的组 ...
- 【学习笔记】PYTHON数据分析与展示(北理工 嵩天)
0 数据分析之前奏 课程主要内容:常用IDE:本课程主要使用:Anaconda Anaconda:一个集合,包括conda.某版本Python.一批第三方库等 -支持近800个第三方库 -适合科学计算 ...
- 绘图神器-matplotlib入门
这次,让我们使用一个非常有名且十分有趣的玩意儿来完成今天的任务,它就是jupyter. 一.安装jupyter matplotlib入门之前,先安装好jupyter.这里只提供最为方便快捷的安装方式: ...
随机推荐
- 20162325 金立清 S2 W7 C16
20162325 2017-2018-2 <程序设计与数据结构>第7周学习总结 教材学习内容概要 树是非线性结构,其元素组织为一个层次结构 树的度表示树种任意结点的最大子结点数 有m个元素 ...
- 《UML大战需求分析》-读后感二
活动图将流成分解为一个一个的活动,通过活动的先后顺序来展示流程,而状态机图是从某个事物的状态是如何转变的角度来展示流程,首先确定事物,然后找出状态,状态之间的箭头叫转换,箭头上的文字说明了是什么事情导 ...
- Java 反射 不定参数bug
遇到的第一个关于反射的bug:java.lang.IllegalArgumentException: wrong number of arguments的问题解析如下: 1.错误bug wrong n ...
- sleep与信号唤醒的问题 & 内核对信号的处理方式 & udelay
http://www.cnblogs.com/charlesblc/p/6277848.html 注意,sleep是会被信号唤醒的. sleep函数:#include <unistd.h&g ...
- sed ,awk , cut三剑客的区别
sed: sed只能截取文件中以行的来截取数据,,(grep命令可以过滤到某一行) 例如: [root@localhost ~]# sed -n '2,3p' /etc/passwd ...
- 更改数据库字符集编码引起的问题、textarea标签输出内容时不能顶格(左对齐)输出
用svn拉下来的项目,部署好的Oracle数据库(gbk编码),用tomcat部署好并发布项目,当访问相关网页时,出现乱码.于是把Oracle的字符编码改成utf8,tomcat也改成UTF-8,重新 ...
- js对象进行浅复制,深拷贝的方法
js对象浅拷贝和深拷贝详解 本文为大家分享了JavaScript对象的浅拷贝和深拷贝代码,供大家参考,具体内容如下 1.浅拷贝 拷贝就是把父对像的属性,全部拷贝给子对象. 下面这个函数,就是在做拷 ...
- 11git更改提交
.将不必要的文件add .上次提交觉得是错的 .不想改变暂存区内容,只是想调整提交的信息 .版本回滚 git reset HEAD 文件名 移除不必要的添加到暂存区的文件 git reset HEAD ...
- [转贴]systemd 编写服务管理脚本
[转贴]sparkdev大神的博客, 关于 systemd的配置文件的 介绍, 自己之前二进制安装 k8s 时 超过一个 service文件 但是当时不明不白的. 现在再学习一下大神的文章 的确牛B ...
- python自动化之连接数据库
# -*- coding: utf-8 -*- """ Created on Fri Mar 20 10:50:56 2015 @author: sl "&qu ...