Matplotlib:更改指数的字体大小

6

我想改变指数的字体大小,如图片所示 pic 由于我有不同的图需要不同的字体大小,因此无法使用matplotlib.rc('font', **font)方法,因此我需要逐个更改每个元素。但是我找不到指数的字体属性。


为什么不先通过将数据除以1e12并在标签上注明来消除指数呢? - tiago
你有在任何地方更改标签的字体大小吗?y轴的标签似乎比x轴的标签要大。你可以尝试使用类似tick_params的东西。 - Robbert
@Robbert:是的,我已经更改了所有其他字体,只是找不到如何更改指数的方法。 - sonium
@tiago:也许这是一个选项,但我需要自己计算最适合的指数。 - sonium
指数是“offsetText”吗?如果不是,那么它是如何计算的? - Francesco Montesano
指数的字体大小和图例一样大,这是巧合吗? - Robbert
1个回答

14
如果指数是由matplotlib计算出的offset,您可以按照以下方式更改指数的字体大小为30
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(1,1.0001,100)

fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(x)
t = ax.yaxis.get_offset_text()
t.set_size(30)
plt.show()

2
记录一下,如果指数也是乘数,这个方法同样适用。 - jonnybolton16

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接