其他分享
首页 > 其他分享> > matplotlib修正坐标轴ylim的空白

matplotlib修正坐标轴ylim的空白

作者:互联网

用matplotlib绘制折线图后,我通过找y轴最小值的方式,绘制下图中的标注线,但是看到下面总是有一些空白,说明得到的y轴最小值不是在原点,就像x轴的第一个值一样。

bottom, top = plt.ylim() #获得y轴最大最小值
plt.plot([sLogit_max,sLogit_max],[bottom,start_logits[sLogit_max]], color ='red', linewidth=0.5, linestyle="--")
plt.plot([eLogit_max,eLogit_max],[bottom,end_logits[eLogit_max]], color ='red', linewidth=0.5, linestyle="--")

在这里插入图片描述
为了修正这个,可以通过设置spines(图中上下左右四个边框)。

 ax = plt.gca()    #获得当前axis
 bottom, top = plt.ylim() #获得y轴最大最小值
ax.spines['bottom'].set_position(('data', bottom)) 移动x轴到y轴最小值位置
plt.xticks(range(n_bins), passage, rotation=90, fontsize=4) 
#设置spines后xticks设置的属性消失,xticks放在后面

注意到设置spines后,横轴设置的文字属性消失。因此我把设置横轴文字放在设置spines后。
在这里插入图片描述

标签:plt,bottom,最小值,max,spines,matplotlib,坐标轴,设置,ylim
来源: https://blog.csdn.net/m0_38133212/article/details/87889475