4

如何更改 matplotlib 中 y 轴上方的 sci 符号的大小?

下面是四个子图的基本代码和图像,我不知道如何减小 y 轴上方的 sci 幂符号的大小。

我们欢迎所有的建议

在此处输入图像描述

import matplotlib.pyplot as plt
import numpy as np

def plot():
    #plot data
    ax.plot(np.arange(0,10000,100),np.arange(0,10000,100))

    #set label style        
    ax.ticklabel_format(style='sci',axis='y')
    ax.yaxis.major.formatter.set_powerlimits((0,0))

    #format labels/ticks
    ax.tick_params(axis='x',tick1On=True, tick2On=False, label1On=True,
        label2On=False, labelsize=7,color='black')
    ax.tick_params(axis='y', tick1On=True,tick2On=False, label1On=True,
        label2On=False, labelsize=7,color='black')

fig = plt.figure()
ax = fig.add_subplot(2,2,1)
plot()

ax = fig.add_subplot(2,2,2)
plot()

ax = fig.add_subplot(2,2,3)
plot()

ax = fig.add_subplot(2,2,4)
plot()

plt.tight_layout()
fig.subplots_adjust(left=None, bottom=None, right=None, wspace=0.15, hspace=0.22)

plt.show()
4

2 回答 2

6

添加这一行:

plt.rc('font', **{'size':'30'})

更改 y 轴上方的字体大小。30 使文本明显更大,但我假设您想与轴标签等匹配,因此您需要大约 6-8 的内容。这实际上会改变其他文本字体大小(虽然不是轴标签或刻度标签)。

于 2013-01-04T16:45:56.303 回答
1

使用offsetTextMatplotlibAxisArtist容器的属性表示功率。要将字体大小更改为power_fontsize,您可以执行

ax.yaxis.get_offset_text().set_fontsize(power_fontsize)

对于ax代码中的每个实例。

于 2021-11-03T21:05:31.090 回答