在Matplotlib中更改科学记数法刻度标签的大小

时间:2017-05-09 14:17:14

标签: matplotlib plot insets

我正在将插图绘制成一个更大的数字,我有一个问题,就是为插图重新调整两个轴的刻度。

我已经查看了这个问题Matplotlib make tick labels font size smaller并设法调整了大小。

然而,我的刻度线是在两个轴(自动)上使用科学记数法绘制的,虽然这不是问题,但'1e-7'标签不会与其余刻度调整大小并且它与x轴标签叠加

有人能告诉我如何改变'1e-7'的大小吗?我找不到办法!

以下是导致我出现问题的代码和图。

if(stringToCheck.Any(e => s.Contains(e)){
   //
}

inset that causes problems

1 个答案:

答案 0 :(得分:1)

一种方法是使用ax.yaxis.get_offset_text()方法返回文本对象,然后使用set_fontsize(7)进行设置。尝试:

tx = ax2.xaxis.get_offset_text()
tx.set_fontsize(7)

或者,如果您想删除偏移量,然后将其添加到您选择的位置,请使用:

tx.set_visible(False)
ax2.text(1.1, -.1, "1e-7", fontsize=7)

您可能需要手动调整x和y位置,直到看起来很好。