我是使用python尤其是numpy和matplotlib的新手。运行下面的代码(无需\frac{}{}部分就可以正常运行)会产生错误:

Normalized Distance in Chamber ($
                             rac{x}{L}$)
                            ^
Expected end of text (at char 32), (line:1, col:33)

数学模式似乎对我尝试过的其他所有东西都适用(大多数符号,例如$\mu$可以正常工作并显示µ),所以我不确定这里发生了什么。我查找了其他人的代码作为示例,他们似乎只是使用\frac{}{}而没有什么特别的地方,并且效果很好。我不知道我在做什么。这是代码。谢谢您的帮助!
import numpy as np
import math
import matplotlib.pylab as plt

[ ... bunch of calculations ... ]

plt.plot(xspace[:]/L,vals[:,60])
plt.axis([0,1,0,1])
plt.xlabel('Normalized Distance in Chamber ($\frac{x}{L}$)')
plt.savefig('test.eps')

另外,我确实查找了\f,它似乎是一个“转义字符”,但是我不知道这是什么意思,或者为什么它会在TeX模式下处于 Activity 状态。

最佳答案

在许多语言中,反斜杠字母是一种输入否则很难键入的字符的方法。在这种情况下,这是“换页”。例子:

\n — newline
\r — carriage return
\t — tab character
\b — backspace

要禁用此功能,您要么需要转义反斜杠本身(backslash-backslash是反斜杠)
'Normalized Distance in Chamber ($\\frac{x}{L}$)'

或在禁用转义序列的地方使用“原始”字符串:
r'Normalized Distance in Chamber ($\frac{x}{L}$)'

这与Python有关,与TeX不相关。

Documentation on Python string literals

09-04 08:58
查看更多