Matplotlib 是最流行的用于绘制图表的 Python 库,是 Python 的 2D 绘图库。Matplotlib 的操作简单,只需几行代码就可以生成直方图、条形图、折线图、散点图等图形。Matplotlib 中应用最广泛的是 matplotlib.pyplot 模块。matplotlib.pyplot 是一个命令风格函数的集合,使得 Matplotlib 的机制更像 MATLAB。
第一部分的主要作用是构建一个空白画布,并可以选择是否将整个画布划分为多个部分以便在同一幅图上绘制多个图形的情况。当只需绘制一幅图时,这部分内容可以省略。
函数名称 | 函数作用 |
---|---|
plt.figure | 创建一个空白画布,可以指定画布大小、像素 |
figure.add_subplot | 创建并选中子图,可以指定子图行数、列数和选中图片的编号 |
第二部分是绘图的主体部分。其中添加标题、添加坐标轴名称、绘制图形等步骤是并列的,没有先后顺序。但是添加图例一定要在绘制图形之后。
函数名称 | 函数作用 |
---|---|
plt.title | 在当前图形中添加标题,可以指定标题的名称、位置、颜色、字体大小等参数 |
plt.xlabel | 在当前图形中添加 x 轴名称,可以指定位置、颜色、字体大小等参数 |
plt.ylabel | 在当前图形中添加 y 轴名称,可以指定位置、颜色、字体大小等参数 |
plt.xlim | 指定当前图形 x 轴范围,只能确定一个数值区间,而无法使用字符串标识 |
plt.ylim | 指定当前图形 y 轴范围,只能确定一个数值区间,而无法使用字符串标识 |
plt.xticks | 指定 x 轴刻度的数目与取值 |
plt.yticks | 指定 y 轴刻度的数目与取值 |
plt.legend | 指定当前图形的图例,可以指定图例的大小、位置、标签 |
函数名称 | 函数作用 |
---|---|
plt.savefig | 保存绘制的图形,可以指定图形的分辨率、边缘的颜色等参数 |
plt.show | 在本机中显示图形 |
# pyplot中的基础绘图语法
import numpy as np
import matplotlib.pyplot as plt
# %matplotlib inline # 表示在行中显示图片,在命令行运行报错
data = np.arange(0,1,0.01)
plt.title('lines') # 标题
plt.xlabel('x') # x轴名称
plt.ylabel('y') # y轴名称
plt.xlim((0,1)) # x轴范围
plt.ylim((0,1)) # y轴范围
plt.xticks([0,0.2,0.4,0.6,0.8,1]) # x轴刻度
plt.xticks([0,0.2,0.4,0.6,0.8,1]) # y轴刻度
plt.plot(data,data**2) # y=x^2 曲线
plt.plot(data,data**4) # y=x^4 曲线
plt.legend(['y=x^2','y=x^4']) # 图例
plt.savefig('y=x^2.png') # 保存图片
plt.show() # 显示图片
# 包含子图绘制的基础语法
rad = np.arange(0,np.pi*2,0.01)
# 第一幅图
p1 = plt.figure(figsize=(8,6),dpi=80) # 确定画布大小(默认(6.4,4.8))及像素(默认100)
ax1 = p1.add_subplot(2,1,1) # 创建一个2行1列的子图
plt.title('lines')
plt.xlabel('x')
plt.ylabel('y')
plt.xlim((0,1))
plt.ylim((0,1))
plt.xticks([0,0.2,0.4,0.6,0.8,1])
plt.xticks([0,0.2,0.4,0.6,0.8,1])
plt.plot(rad,rad**2)
plt.plot(rad,rad**4)
plt.legend(['y=x^2','y=x^4'])
# 第二幅子图
ax2 = p1.add_subplot(2,1,2)
plt.title('sin/cos'<