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()
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()
参数说明:
- color:‘b’ 蓝色,‘m’ 洋红色,‘g’ 绿色,‘y’ 黄色,‘r’ 红色,‘k’ 黑色,‘w’ 白色,‘c’
青绿色,‘#008000’ RGB 颜色符串。 - linestyle:‘‐’ 实线,‘‐‐’ 破折线,‘‐.’ 点划线,‘:’ 虚线。
- linewidth:设置线的宽度,可以设置一个数字。