Python Matplotlib标签中的重音乳胶字母
我的问题是关于 例如,我想在Matplotlib绘图中将Python Matplotlib标签中的重音乳胶字母,python,matplotlib,latex,axis-labels,Python,Matplotlib,Latex,Axis Labels,我的问题是关于 例如,我想在Matplotlib绘图中将$\tilde{b}$显示为ylabel MWE import matplotlib import matplotlib.pyplot as plt matplotlib.rc('text', usetex=True) plt.figure(1) plt.plot(np.array([0, 1]), np.array([0, 1])) plt.ylabel('$\tilde{b}$') plt.show() 结果是,它只是显示 ilde
$\tilde{b}$
显示为ylabel
MWE
import matplotlib
import matplotlib.pyplot as plt
matplotlib.rc('text', usetex=True)
plt.figure(1)
plt.plot(np.array([0, 1]), np.array([0, 1]))
plt.ylabel('$\tilde{b}$')
plt.show()
结果是,它只是显示
ilde b
在轴线上。我认为这与b是辅音这一事实有关,但它对元音也不起作用
我能做什么呢?之所以得到这个结果,是因为在要呈现为标签的字符串中,
'$\tilde{b}$'
,Python将\t
识别为特殊字符:
这不是唯一的特殊角色。另一个突出的例子是\n
,它表示换行符。特殊字符的完整列表可以在Python语言参考部分中找到
部分
在Python教程注释中:
如果不想将以\开头的字符解释为特殊字符,可以通过在第一个引号前添加r来使用原始字符串:
因此,如果不是
plt.ylabel('$\tilde{b}$')
你用
plt.ylabel(r'$\tilde{b}$')
值得一提的是,代码中的matplotlib.rc('text',usetex=True)
行(除了matplotlib之外,还需要一个LaTeX安装)不必重现该行为