本系列文章配套代码获取有以下两种途径:
-
通过百度网盘获取:
链接:https://pan.baidu.com/s/1jG-rGG4QMuZu0t0kEEl7SA?pwd=mnsj
提取码:mnsj
-
前往GitHub获取:
https://github.com/returu/Data_Visualization
Matplotlib中使用tick_params()函数设定坐标轴的刻度样式,语法如下:
plt.tick_params(axis='both' , **kwargs)
常用参数主要分为三大类,具体内容如下所示:
1.刻度属性参数:
-
axis=’both’:选项参数,表示此刻度同时应用在x轴和y轴,如果单独设定axis=’x’,表示应用在x轴;如果单独设定axis=’y’,表示应用在y轴,默认是同时应用在x轴和y轴; -
which:作用于哪个刻度线,取值为:major(主要刻度线;默认) 、 minor(次要刻度线)、 both(主要和次要刻度线)。需要通过plt.minorticks_on()函数显示次要刻度线,该参数才起作用; -
direction:可以是in、out或inout,默认是out,表示刻度在坐标轴外侧,in表示刻度在坐标轴内侧,inout表示刻度跨越坐标轴。 -
length:刻度的长度,单位是点数。 -
width:刻度的宽度,单位是点数。 -
color:刻度的颜色。
示例代码如下所示:
x = np.linspace(0 , 2*np.pi , 200)
y = np.sin(x)
plt.plot(x,y)
# 显示次要刻度线
plt.minorticks_on()
# 设定x轴的刻度样式
plt.tick_params(axis='x' , # 应用在x轴
which='minor', # 应用在次要刻度线
direction='inout' , # 刻度跨越坐标轴
length=6 , # 刻度的长度
width=1 , # 刻度的宽度
color='r' , # 刻度的颜色
)
# 设定y轴的刻度样式
plt.tick_params(axis='y' , # 应用在y轴
which='major', # 应用在主要刻度线
direction='in' , # 刻度在坐标轴内侧
length=10 , # 刻度的长度
width=2 , # 刻度的宽度
color='b' , # 刻度的颜色
)
plt.show()
可视化效果如下图所示:
2.刻度标签属性参数:
-
pad:刻度(tick)和刻度标签(label)的距离,单位是点数。 -
labelsize:刻度标签的字号,单位是点数。也可以使用large等字符串。 -
labelcolor:刻度标签的颜色。 -
bottom, top, left,right :布尔值,是否绘制相对应的刻度,默认绘制left和bottom的刻度。 -
labelbottom, labeltop, labelleft, labelright:布尔值,是否绘制相对应的刻度标签,默认绘制labelleft和labelbottom的。 -
labelrotation:刻度标签的旋转角度;
示例代码如下所示:
x = np.linspace(0 , 2*np.pi , 200)
y = np.sin(x)
plt.plot(x,y)
# 设定x轴的刻度样式
plt.tick_params(axis='x' , # 应用在x轴
pad = 20 , # 刻度(tick)和刻度标签(label)的距离
labelsize=12 , # 刻度标签的字号
labelcolor='b' , # 刻度标签的颜色
top=True , # 绘制上方的刻度
labeltop=True , # 绘制上方的刻度标签
bottom=False , # 不绘制底部的刻度
labelbottom=False # 不绘制底部的刻度标签
)
# 设定y轴的刻度样式
plt.tick_params(axis='y' , # 应用在y轴
labelcolor='y' , # 刻度标签的颜色
right=True , # 绘制右侧的刻度
labelright=True , # 绘制右侧的刻度标签
left=False , # 不绘制左侧的刻度
labelleft=False , # 不绘制左侧的刻度标签
labelrotation=45 # 刻度标签的旋转角度
)
plt.show()
可视化效果如下图所示:
3.网格线属性参数:
需要通过plt.grid()函数显示网格线后,该参数才起作用;
-
gird_color:与坐标轴垂直的网格线的颜色;
-
grid_alpha:网格线的透明度;
-
grid_linewidth:网格线的线条粗细;
-
grid_linestyle:网格线的线条类型。
示例代码如下所示:
x = np.linspace(0 , 2*np.pi , 200)
y = np.sin(x)
plt.plot(x,y)
plt.grid()
# 设定x轴的刻度样式
plt.tick_params(axis='x' , # 应用在x轴
grid_color='y', # 纵向网格线的颜色
grid_alpha=0.3, # 网格线的透明度
grid_linewidth=5, # 网格线的线条粗细
grid_linestyle=':' # 网格线的线条类型
)
# 设定y轴的刻度样式
plt.tick_params(axis='y' , # 应用在y轴
grid_color='m', # 纵向网格线的颜色
grid_alpha=0.3, # 网格线的透明度
grid_linewidth=5, # 网格线的线条粗细
grid_linestyle='-.' # 网格线的线条类型
)
plt.show()
可视化效果如下图所示:
更多内容可以前往官网查看:
https://matplotlib.org/stable/
本篇文章来源于微信公众号: 码农设计师