如何从Python的Matplotlib图中删除yaxis的top值?

2024-06-01 05:04:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用Matplotlib绘制一些数据。我的代码运行得很好,但是我的图形标题和y轴刻度的最高值之间存在冲突。所以我的问题是,有没有人知道如何只从y轴上删除最大值,同时保持绘图的其他所有内容不变?在

我的代码

cyp_minus=pandas.read_csv(cyp_minus_file,sep='\t')
cyp_plus=pandas.read_csv(cyp_plus_file,sep='\t')
plt.figure(9)
plt.plot(cyp_minus['Dose']*1000,cyp_minus['atRA_minus_tet'],label='Control')
plt.plot(cyp_plus['Dose']*1000,cyp_plus['Cyp26(atRA_plus_tet)'],label='RARa Overexpression')
x=plt.xlabel('[atRA] (nM)',fontsize=15)
plt.ylabel('[Cyp26A1]/beta-actin',fontsize=15)
plt.title('Effect of RARa overexpression on Cyp26A1 dose-response curve',fontsize=15)
plt.legend(loc=2,fontsize=15)
plt.rc('xtick', labelsize=20)
plt.rc('ytick', labelsize=20)
plt.savefig('Cyp26A1 DR-curve for presentation.tiff',dpi=500,bbox_extra_artists=[x], bbox_inches='tight')

谢谢


Tags: csvpandasreadplotpluspltsepfile
2条回答

作为接受答案的另一种选择,如果您确实想从勾号标签中删除文本,您可以这样做:

yticks = plt.gca().get_yticks().tolist() # get list of ticks
yticks[-1] = ''                          # set last tick to empty string
ax.set_yticklabels(yticks)               # set the labels

您可以将标题调高,这样它就不会与y顶部的值重叠:

plt.title('Effect of RARa overexpression on Cyp26A1 dose-response curve',fontsize=15, y=1.5) # Change y value accordinly

相关问题 更多 >