首页 > 编程笔记 > Python笔记 阅读:4

Matplotlib grid():设置网格线(附带实例)

网格线是从坐标轴刻度延伸至整个图表区域的水平和垂直线条,有助于更准确地观察数据点的值。

在 Matplotlib 中,可以同时显示 x 轴和 y 轴的网格线,也可以只显示其中一个坐标轴的网格线,还可以设置网格线的线型、线宽和颜色。

Matplotlib在图表中显示网格线

使用 pyplot 模块中的 grid() 函数或 Axes 对象的 grid() 方法,可以设置图表中的网格线。如需在图表中显示默认格式的网格线,只需调用不带任何参数的 grid() 函数或 grid() 方法。

下面的任意一行代码都将在图表中显示 x 轴和 y 轴的网格线:
plt.grid()
ax.grid()
效果如下图所示:


图 1 显示网格线

如果只想显示其中一个坐标轴的网格线,则需要在 grid() 函数或 grid() 方法中指定 axis 关键字参数。

下面的任意一行代码都将只显示 x 轴的网格线:
plt.grid(axis='x')
ax.grid(axis='x')
效果如下图所示:


图 2 只显示x轴的网格线

下面的任意一行代码都将只显示 y 轴的网格线:
plt.grid(axis='y')
ax.grid(axis='y')
效果如下图所示:


图 3 只显示y轴的网格线

如果在后续代码中想要重新显示 x 轴和 y 轴的网格线,则可以将 axis 参数的值设置为 both。

Matplotlib更改网格线的线条格式

网格线的线条格式包括颜色、线型和线宽等,使用 color 参数可以指定颜色,使用 linestyle 参数可以指定线型,使用 linewidth 参数可以指定线宽。

下面的任意一行代码都将网格线设置为黄色:
plt.grid(color='y')
ax.grid(color='y')

下面的任意一行代码都将网格线设置为虚线,并将其宽度设置为 2 个像素点:
plt.grid(linestyle='dashed', linewidth=2)
ax.grid(linestyle='dashed', linewidth=2)
效果如下图所示:


图 4 更改网格线的线条格式

下表列出了设置线型时可以使用的值:

表:linestyle 参数的取值
取值 线型
solid 或 - 实线
dashed 或 -- 虚线
dashdot 或 -. 点画线
dotted 或 : 点线

相关文章