2015-11-03 119 views
0

我一直都有這個麻煩很長一段時間,只要我想繪製LaTeX繪圖標籤和文本,它有時適用於某些符號,但不適用於其他符號。例如,在這裏顯示我的腳本生成下面的情節:LaTeX不能在matplotlib文本上工作

from matplotlib import rc 
plt.rc('text', usetex=True) 
plt.plot(a_t,asol[:,0],label ='$\psi$') 
plt.plot(a_t,rho,label ="$\rho/\rho_c$") 
plt.xlabel(r"$\xi$",fontsize=15) 
from matplotlib.legend_handler import HandlerLine2D 
plt.legend(loc='upper left',prop={'size':12},numpoints=1) 

plt_result

我試過其他符號,$ \ $ PI工作好,但$ \ $ THETA只顯示「赫塔」沒有的T 。我很困惑爲什麼一些符號適用於LaTeX,有些則不適用。

謝謝!

回答

2

請記住,Python字符串中的某些字符具有特殊的含義,例如\r用於回車,\t用於製表符。這就是爲什麼在某些時候你只能得到奇怪的結果,因爲\p沒有特別的意義。因此,要麼請確保您的反斜線被轉義它們作爲文字處理反斜槓:

plt.plot(a_t,rho,label = "$\\rho/\\rho_c$") 

或者使用原始字符串:

plt.plot(a_t,rho,label = r"$\rho/\rho_c$") 
+0

我明白了。謝謝你讓我知道! – ROBOTPWNS