tf好朋友之matplotlib的使用——坐标能见度设置坐标能见度设置常用函数set_bbox方法应用示例
坐标太多挡住其它标记,挡住彼此怎么办!那必然是,给他们一个透明度啊!
坐标能见度设置常用函数set_bbox方法
对坐标进行透明度设置的关键性代码是:
forlabelinax.get_xticklabels()+ax.get_yticklabels():label.set_fontsize(12)label.set_bbox(dict(facecolor='white',edgecolor='None',alpha=0.7,zorder=2))
该代码的执行顺序是首先获取x轴和y轴的坐标tick的标签labels,然后设置字体的大小为12,之后使用set_bbox方法,传入一个字典,字典的参数可以包含以下部分:1、facecolor:代表其前景色。2、edgecolor:代表其边框颜色。3、alpha:代表透明度为多少,float型0~1。4、zorder:是图层次序的关键参数,越大表示在越上层,越小表示在越底层,其含义与PowerPoint内的图层次序类似,因此不仅要设置labels的zorder,还要设置线的zorder。
plt.plot(x,y1,zorder=1)应用示例importmatplotlib.pyplotaspltimportnumpyasnpx=np.linspace(-1,1,50)y1=5*x**2-1plt.xlim((-1,1))plt.ylim((-2,5))newTicks=np.linspace(-1,1,11)plt.xticks(newTicks)#y轴字体差别,设置成斜体plt.yticks([-2,-1.0,0,1.5,3],[r'$really\bad$',r'$little\bad$',r'$normal$',r'$little\good$',r'$pretty\good$'])plt.plot(x,y1,zorder=1)#获得当前的axisax=plt.gca()#设置图像的上边、右边axis为无色ax.spines['right'].set_color('none')ax.spines['top'].set_color('none')#设置x轴坐标在下部ax.xaxis.set_ticks_position('bottom')#设置x轴位于图像y=0处ax.spines['bottom'].set_position(('data',0))#设置x轴坐标在左部ax.yaxis.set_ticks_position('left')#设置y轴位于图像x=0处ax.spines['left'].set_position(('data',0))forlabelinax.get_xticklabels()+ax.get_yticklabels():label.set_fontsize(12)label.set_bbox(dict(facecolor='white',edgecolor='none',alpha=0.7,zorder=2))plt.show()
结果为: