python – matplotlib图例标签与LaTeX数学的垂直对齐
发布时间:2020-12-20 11:55:41 所属栏目:Python 来源:网络整理
导读:将具有下标的标签与没有它们的标签混合时,它们不会在图例中垂直对齐.由于matplotlib在内部根据打印字符确定边界框,因此使用vphantom字符无法对齐这些图例标签,我也没有运气改变标签与set_va的垂直对齐方式. 下面是一个MWE,它说明了我试图解决的问题.我希望标
将具有下标的标签与没有它们的标签混合时,它们不会在图例中垂直对齐.由于matplotlib在内部根据打印字符确定边界框,因此使用vphantom字符无法对齐这些图例标签,我也没有运气改变标签与set_va的垂直对齐方式.
下面是一个MWE,它说明了我试图解决的问题.我希望标签尽可能与文本基线对齐,否则与文本顶部对齐. import numpy as np import matplotlib as mpl mpl.rcParams['text.usetex'] = True import matplotlib.pyplot as plt x = np.arange(10) plt.plot(x,np.random.uniform(size=(10,)),c='red',label=r'test') plt.scatter(x,c='blue',label=r'test${}_{xy}$') plt.legend(ncol=2) plt.show() 解决方法
将text.latex.preview参数设置为True:
import numpy as np import matplotlib as mpl mpl.rcParams['text.usetex'] = True mpl.rcParams['text.latex.preview'] = True import matplotlib.pyplot as plt x = np.arange(10) plt.plot(x,label=r'test${}_{xy}$') plt.legend(ncol=2) plt.show() 有关预览参数的效果,请参阅this example. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |