我正在尝试使两个单词在matplotlib中的图例中对齐。使用print语句,我可以使用可用的格式化工具来完成此操作(<表示左对齐,>表示右对齐),但是在图例中,结果不同。
import matplotlib.pyplot as plt
import numpy as np
str1 = r'{:<18} {:>12}'.format('HadGEM2-ES'+',', r'$\lambda$')
str2 = r'{:<18} {:>12}'.format('inmcm4'+',', r'$\lambda$')
print(str1)
print(str2)
plt.plot(np.arange(10), label=str1)
plt.plot(0.8*np.arange(10), label=str2)
plt.legend()
这样print语句的输出将变得整洁:
HadGEM2-ES, $\lambda$
inmcm4, $\lambda$
但是图中的图例显示方式有所不同。如何使图中的图例对齐。
答案 0 :(得分:2)
该间距对于print语句是正确的,因为控制台中使用的字体是等宽字体。您可以通过以下方式在图例中复制它:
plt.legend(prop={'family': 'monospace'})