我正在使用matplotlib在python中的线上绘制一些点,并且每当该点在图的边界处/边界附近时,由于重叠的轴标签等原因,带注释的文本很难阅读(请参见下面的屏幕截图):
我目前正在使用这样的代码手动放置我的点注释:
# add value text to x, y point
jt = x_points_to_plot # a single x-value, in this case
f = ys_func(x_points_to_plot) # a single y-value, in this case
ax.annotate(
'({}C, {:0.0f}%)'.format(jt, f), # the string text to add
xy=(jt + 1, f + 5), # offset the text from the point manually
ha='center')
通常,我的观点在中间,看起来可以接受,如下所示:
但是我不想为每个点手动调整文本,因为我有很多变化的数据,而且这里不是我要花费时间的地方。 相反,我很想找到一种容纳文本的方法,以便在情节上易于阅读。也许我可以扩展该图以包含新文本,或者可以根据关于文本附近可能存在的一系列条件将文本移到其他位置?我不确定...
我认为最好的答案是我可以在其他项目中重复使用的答案,可以可靠地绘制图中的任何地方,并且相对容易实现(我必须为每个项目重新创建的自定义功能或“ hacks”数量最少) )。在此先感谢一吨!