欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Matplotlib之tick设置坐标轴刻度的透明度

程序员文章站 2022-05-27 16:09:06
...

如图,由于图线太粗,导致坐标系中的部分刻度被遮挡:

Matplotlib之tick设置坐标轴刻度的透明度

对坐标轴的的坐标点进行遍历,分别对这些点进行透明度的设置,代码如下:

import matplotlib.pyplot as plt
from numpy import *
x=linspace(-2,2)
y=2*x
ax=plt.gca()
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.spines['bottom'].set_position(('data',0))
ax.spines['left'].set_position(('data',0))
plt.title('Function') #设置图片标题
plt.plot(x,y,color='blue',linewidth=20,zorder=1)   #这里的zorder必须是不大于1的数,否则下面的设置无效。

#对坐标轴上的刻度进行设置
for label in ax.get_xticklabels()+ax.get_yticklabels():
    label.set_bbox(dict(facecolor='white',edgecolor='none',alpha=0))
    label.set_zorder=2

plt.show()     #显示

代码解释:

bbox表示盛放刻度的盒子,我们可以理解为,坐标系中显示的所有刻度都是放在一个盒子中显示的,我们设置这个盒子为白色,也就是和图片的背景颜色一样,alpha表示透明度,0为盒子全透明,1表示不透明,也可以设置0-1之间的其他数字。