为什么我在绘图标签中尝试使用LaTeX时会出错

blu*_*xel 8 python matplotlib

我试着表明:

在此输入图像描述

...作为我的情节'x轴标签.为此我使用pylab.figtext()函数,即:

py.figtext(0.5, 0.05, "$k=2,\left \langle \left | -k \right |;k \right \rangle, 
k\in \mathbb{N}_{+}\cup\left \{ 0 \right \}$", rotation='horizontal', size='12')
Run Code Online (Sandbox Code Playgroud)

不幸的是,我得到错误:

ValueError: 
$k=2,\left \langle \left | -k 
ight |;k 
ight 
angle, k\in \mathbb{N}_{+}\cup\left \{ 0 
ight \}$
^
Expected end of text (at char 0), (line:1, col:1)
Run Code Online (Sandbox Code Playgroud)

这是为什么?我想,我可以自由使用LaTeX.我应该如何在figtext()方法中格式化我的文本以实现上述数学句子?先感谢您.

Bas*_*els 12

这可以通过1个字母的修正来修复:

py.figtext(0.5, 0.05, r"$k=2,\left \langle \left | -k \right |;k \right \rangle, 
k\in \mathbb{N}_{+}\cup\left \{ 0 \right \}$", rotation='horizontal', size='12')
Run Code Online (Sandbox Code Playgroud)

注意字符串文字之前的r.错误的原因是您的latex字符串中的几个字符组合是有效的Python 转义序列,例如制表符和换行符.前缀为r(例如r"foo\nbar")的字符串文字使Python将字符串解释为原始字符串文字,即不将转义字符组合转换为特殊字符.


Bre*_*arn 5

字符串中的反斜杠被解释为Python字符串转义符。例如\r,解释为回车。通过制作字符串来使用原始字符串r"$k=2,\left \langle \left..."