半空间'在matplotlib标签和图例中

时间:2017-12-05 08:40:16

标签: python matplotlib

如何在matplotlib标签或图例的文本中插入一半空格,例如数字和单位之间?一个简单的解决方法是使用乳胶渲染,但还有另一种方法,例如使用unicode字符?

2 个答案:

答案 0 :(得分:2)

您可以使用unicode精简空格字符u"\u2009"

例如,将“10”和“km”之间的图例文本中的空格宽度进行比较:

import matplotlib.pyplot as plt
import numpy as np

fig, ax = plt.subplots(1)

ax.plot(np.arange(5), 'r-', label='10 km (normal space)')
ax.plot(5.-np.arange(5), 'b-', label=u"10\u2009km (thin space)")

ax.legend()

plt.show()

enter image description here

答案 1 :(得分:2)

您不需要使用乳胶渲染。正常的MathText就足够了。它仍然具有最基本的乳胶能力,例如可用的\,小空间。

import matplotlib.pyplot as plt

plt.plot([1,2], label='$100\,$s')
plt.plot([1,3], label='$100$ s')

plt.legend()

plt.show()

enter image description here