Matplotlib grid():设置网格线(附带实例)
网格线是从坐标轴刻度延伸至整个图表区域的水平和垂直线条,有助于更准确地观察数据点的值。
在 Matplotlib 中,可以同时显示 x 轴和 y 轴的网格线,也可以只显示其中一个坐标轴的网格线,还可以设置网格线的线型、线宽和颜色。
下面的任意一行代码都将在图表中显示 x 轴和 y 轴的网格线:

图 1 显示网格线
如果只想显示其中一个坐标轴的网格线,则需要在 grid() 函数或 grid() 方法中指定 axis 关键字参数。
下面的任意一行代码都将只显示 x 轴的网格线:

图 2 只显示x轴的网格线
下面的任意一行代码都将只显示 y 轴的网格线:

图 3 只显示y轴的网格线
如果在后续代码中想要重新显示 x 轴和 y 轴的网格线,则可以将 axis 参数的值设置为 both。
下面的任意一行代码都将网格线设置为黄色:
下面的任意一行代码都将网格线设置为虚线,并将其宽度设置为 2 个像素点:

图 4 更改网格线的线条格式
下表列出了设置线型时可以使用的值:
在 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 更改网格线的线条格式
下表列出了设置线型时可以使用的值:
取值 | 线型 |
---|---|
solid 或 - | 实线 |
dashed 或 -- | 虚线 |
dashdot 或 -. | 点画线 |
dotted 或 : | 点线 |