Matplotlib 网格线

我们可以使用 pyplot 中的 grid() 方法来设置图表中的网格线。

grid() 方法语法格式如下:

matplotlib.pyplot.grid(b=None, which='major', axis='both', )
  • b:可选,默认为 None,可以设置布尔值,true 为显示网格线,false 为不显示,如果设置 **kwargs 参数,则值为 true。
  • which:可选,可选值有 'major'、'minor' 和 'both',默认为 'major',表示应用更改的网格线。
  • axis:可选,设置显示哪个方向的网格线,可以是取 'both'(默认),'x' 或 'y',分别表示两个方向,x 轴方向或 y 轴方向。
  • **kwargs:可选,设置网格样式,可以是 color='r', linestyle='-' 和 linewidth=2,分别表示网格线的颜色,样式和宽度。

实例:

1、使用默认值
import numpy as np
from matplotlib import pyplot as plt

plt.rcParams['font.sans-serif'] = [u'SimHei'] # SimHei就是中文字体
# 因为设置了中文后,负号就乱码了,所以还要设置负号的编码
plt.rcParams['axes.unicode_minus'] = False # 修改坐标轴中符号的编码

x=np.array([1,2,3,4,5])
y=np.array([1,4,9,16,25])
plt.plot(x,y,'.-.',linewidth=1)
plt.title('绘图',fontsize=25)
plt.xlabel('x轴',loc='right',fontsize=18)
plt.ylabel('y轴',loc='top',fontsize=18)

plt.grid() # 使用默认值

plt.show()

Matplotlib 网格线_中文字体

2、自定义网格线
import matplotlib.pyplot as plt

import numpy as np
plt.rcParams['font.family']=['FangSong']

x=np.array([1,2,3,4,5])
y=np.array([1,4,9,16,25])
plt.plot(x,y,'.-',linewidth=1)
plt.title('绘图',fontsize=25)
plt.xlabel('x轴',loc='right')
plt.ylabel('y轴',loc='top')
# 只有平行于x轴方向有网格线
plt.grid(axis='y',color='r',linestyle='--',linewidth=0.5)
plt.show()

Matplotlib 网格线_折线_02

参数说明:

  • color:'b' 蓝色,'m' 洋红色,'g' 绿色,'y' 黄色,'r' 红色,'k' 黑色,'w' 白色,'c'青绿色,'#008000' RGB 颜色符串。
  • linestyle:'‐' 实线,'‐‐' 破折线,'‐.' 点划线,':' 虚线。
  • linewidth:设置线的宽度,可以设置一个数字。