天天看点

matplotlib可视化实战之二:matplotlib初识matplotlib

matplotlib

1、测试

在python环境中,输入如下代码,如果不报错则表示安装成功

import matplotlib
import matplotlib.pyplot as plt
           
matplotlib可视化实战之二:matplotlib初识matplotlib

2、运行

在python中输入如下代码,测试生成的matplotlib图形

import matplotlib.pyplot as plt
plt.plot([1,2,3])
plt.ylabel('some numbers')
plt.show()
           

运行上述语句得到如下结果

matplotlib可视化实战之二:matplotlib初识matplotlib

3、pyplot库

matplotlib.pyplot是一个函数集合,可以像使用matlab似的进行图形绘制。pyplot中每个函数都会对画布图像做出相应的改变,比如创建画布、绘制绘图区、画线、添加文字说明等。

常用函数如下:

1.plt.figure()

创建一个全局绘图区域,包含如下参数

参数 含义
num 设置图像编号
figsize 设置图像宽度高度
facecolor 设置图像背景颜色
dpi 设置图像分辨率
edgecolor 设置图像边框颜色

在创建了绘图区域后,再使用函数plt.show()进行展示,如下代码

plt.figure(figsize=(6,4))
plt.show()
           

2.plt.subplot()

在全局绘图区域中创建自绘图区域,包含如下参数

参数 含义
nrows subplot行数
ncols subplot列数

使用subplot划分子区域,如下代码

import matplotlib.pyplot as plt
plt.subplot(333)
plt.show()
           

上述语句将全局划分了3X3的区域,横向为3,纵向为3,并且在第三个位置(右上方)生成了坐标系,如下图

matplotlib可视化实战之二:matplotlib初识matplotlib

3.plt.axes()

创建一个坐标系风格的子绘图区域,默认创建subplot(111)坐标系,参数rect=[left,bottom,width,height]中4个变量的范围都是[0,1],表示全局坐标与全局绘图区的关系,axisbg表示背景色,默认为白色“white”,代码如下

import matplotlib.pyplot as plt
plt.axes([0.1,0.1,0.7,0.3],axisbg='y')
plt.show()
           

4.plt.subplots_adjust()

用于调整子绘图区域的布局

4、pyplot相关函数

plt子库提供了7个用于读取和显示的函数,17个用于绘制基础图表的函数,3个区域填充函数,9个坐标轴设置函数,11个标签与文本设置函数,如下表

读取和显示函数

函数名称 函数作用
plt.legend() 绘图区放置绘图标签
plt.show() 显示绘制的图像
plt.matshow() 窗口显示数组矩阵
plt.imshow() axes上显示图像
plt.imsave() 保存数组为图像文件
plt.savefig() 设置图像保存格式
plt.imread() 从图像文件中读取数组

图表函数

函数名称 函数作用
plt.plot 根据数组绘制直线和曲线
plt.boxplot 绘制箱型图
plt.bar 绘制条形图
plt.barh 绘制横向条形图
plt.polar 绘制极坐标图
plt.pie 绘制饼图
plt.psd 绘制功率谱密度图

区域填充函数

函数名称 函数作用
fill 填充多边形
fill_between 填充曲线围成的多边形
fill_betweenx 填充水平线之间的区域

坐标轴设置函数

函数名称 函数作用
plt.axis 获取设置轴属性的快捷方式
plt.xlim 设置x轴取值范围
plt.ylim 设置y轴取值范围
plt.xscale 设置x轴缩放
plt.yscale 设置y轴缩放
plt.autoscale 自动缩放轴视图
plt.text 添加注释
plt.thetagrids 设置极坐标网格
plt.grid 打开或关闭极坐标

标签与文本设置函数

函数名称 函数作用
plt.figlegend 全局绘图放置图注
plt.xlabel 设置x轴名字
plt.ylabel 设置y轴名字
plt.xticks 设置x轴刻度位置和数值
plt.yticks 设置y轴刻度位置和数值
plt.clabel 设置等高线
plt.get_figlabels 返回标签列表
plt.figtext 添加文本信息
plt.title 设置标题
plt.suptitle 设置总图标题
plt.annotate 添加注释

5、numpy和matplotlib绘图综合应用

执行如下代码

import matplotlib.pyplot as plt
import numpy as np
x=np.arange(10)
y=np.sin(x)
z=np.cos(x)
plt.plot(x,y,marker="*",linewidth=3,linestyle="--",color="red")
plt.plot(x,z)
plt.title("matplotlib")
plt.xlabel("x")
plt.ylabel("y")
plt.legend(["Y","Z"],loc="upper right")
plt.grid(True)
plt.show()
           

运行上述代码得到如下结果

matplotlib可视化实战之二:matplotlib初识matplotlib

示例使用numpy库存储数组,使用matplotlib绘制输出到屏幕上,显示两条颜色不同的折线y和z,分别代表正弦函数和余弦函数