matplotlib使用Latex设置x轴标签部分加粗时空格消失如何解决
原因说明
你遇到的空格消失问题是因为:$...$ 包裹的是LaTeX数学环境,数学环境默认专为公式渲染设计,会自动忽略普通的空格字符。
解决方法
以下3种方案都可以修复该问题,按推荐度排序:
方案1:用\text{}包裹普通文本(最规范)
在加粗命令内用\text{}包裹需要加粗的普通文本,原生空格会被正常识别,也能避免其他非数学字符的渲染异常:
import matplotlib.pyplot as plt fig, ax = plt.subplots() ax.set_xlabel(r'$\bf{\text{xlabel bold}}$ - ' + 'xlabel not bold') plt.show()
方案2:数学环境内用转义空格
在需要保留的空格前加反斜杠转义即可:
ax.set_xlabel(r'$\bf{xlabel\ bold}$ - ' + 'xlabel not bold')
方案3:不用LaTeX语法,用matplotlib原生富文本标记
如果不需要用到复杂LaTeX功能,直接用matplotlib内置的Markdown风格粗体标记即可,写法更简单:
ax.set_xlabel('**xlabel bold** - xlabel not bold')
内容的提问来源于stack exchange,提问作者ecjb
相关产品推荐
相关产品推荐

