[英]Inconsistent font size for scientific notation in axis
我正在嘗試繪制一個 x 軸將以科學記數法顯示的圖。 我找到的方法是使用ticklabel_format
函數。 不幸的是,這不尊重我分配給軸中顯示的數字的字體大小,請參見下圖:
即使我設置了相同的標簽大小, 1e-12
和1e4
也會以不同的字體大小顯示。
我怎么能解決這個問題? (下面是MWE
)
import matplotlib.pyplot as plt
import numpy as np
t = np.arange(0.0, 10000.0, 10.)
s = np.sin(np.pi*t)*np.exp(-t*0.0001)
fig, ax = plt.subplots()
ax.tick_params(axis='both', which='major', labelsize=7)
plt.ticklabel_format(style='sci', axis='x', scilimits=(0,0), labelsize=7)
plt.plot(t,s)
plt.show()
我想這是因為該科學表示不被視為刻度標簽,您可以使用:
import matplotlib
matplotlib.rc('font', size=7)
或者
matplotlib.rcParams['font.size']=7
和刪除labelsize=7
在ax.tick_params
我認為這會對您有所幫助,而無需更改全局設置:
ax.yaxis.get_offset_text().set_fontsize(size)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.