matplotlib 为什么在图的标签中尝试使用LaTeX时会出现错误

j9per5c4  于 2023-01-09  发布在  其他
关注(0)|答案(4)|浏览(310)

我试图表明:

......作为绘图的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')

不幸的是,我得到错误:

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)

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

b5buobof

b5buobof1#

这可以通过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')

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

3z6pesqy

3z6pesqy2#

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

abithluo

abithluo3#

我在处理this page和r上的一个例子时遇到了类似的问题,在我的字符串文字没有帮助之前,我转义了$符号,它起作用了。

r"Standardized [\$\$N  (\mu=0, \; \sigma=1)\$\$]",
mwg9r5ms

mwg9r5ms4#

是的,在前面加个“r”就行了。
检查该行:第一个月
without 'r'with 'r'

相关问题