matplotlib
1、测试
在python环境中,输入如下代码,如果不报错则表示安装成功
import matplotlib
import matplotlib.pyplot as plt
2、运行
在python中输入如下代码,测试生成的matplotlib图形
import matplotlib.pyplot as plt
plt.plot([1,2,3])
plt.ylabel('some numbers')
plt.show()
运行上述语句得到如下结果
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,并且在第三个位置(右上方)生成了坐标系,如下图
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()
运行上述代码得到如下结果
示例使用numpy库存储数组,使用matplotlib绘制输出到屏幕上,显示两条颜色不同的折线y和z,分别代表正弦函数和余弦函数