2012-08-14 3 views
10

그리스 문자 'rho'가 포함 된 그래프에 축 레이블을 추가하려고합니다. 이렇게하려면 Matplotlib의 LaTeX 기능을 사용하고 싶지만 \ rho 기호에 문제가있는 것 같습니다. 다시 실행하면 그래프를 표시하지만 xlabel 읽기Matplotlib LaTeX : 그리스 문자로 일치하지 않는 동작 (특히 rho)

import matplotlib.pyplot as plt 
from matplotlib import rc,rcParams 

rc('text',usetex=True) 
rcParams.update({'font.size': 16}) 

plt.plot([0,1,2,3,4],[0,1,4,9,16]) 
plt.xlabel('\rho A_i') # works if \rho is replaced with, for example, \sigma 
plt.ylabel('Something else') 
plt.show() 

내가 LaTeX의 오류 및 빈 그림 윈도우의 무리를 얻을 처음 실행시 '호 아이': 여기

는 최소한의 예입니다 여기서 i은 예상대로 아래 첨자로 표시됩니다.

\rho을 다른 것으로 바꾸면 이상한 일이 발생합니다. 예를 들어, \sigma이 올바르게 표시됩니다. 아무도 내 코드 예제와 그 문제를 해결하는 방법에 만족하지 않는다고 말할 수 있습니까?

감사합니다.

p.s. $..$에 표현식을 넣으려고했으나 아무 것도 변경되지 않았습니다.

답변

16

나는 원시 문자열을 사용하고 $ 기호도 사용해야한다고 생각합니다. 보십시오 : 당신이 문자열 등 \n, \r을 사용하고있을 때

plt.xlabel(r'$\rho A_i$') 
+0

증명 :'print ('\ r')'- 나는'\ r'이 아마 캐리지 리턴이라고 생각합니다 ... – mgilson

+0

yah, 좋은 지적입니다. – reptilicus

+0

고마워. 방정식 비트 다음에 텍스트가 없다면'$ .. $'은 필요하지 않습니다. Matplotlib은 방정식이 시작되는 곳을 추측하는 것으로 보입니다. – Dan

4

하는 것은주의해야합니다. 그것들은 예를 들면. 등

https://docs.python.org/2/library/re.html

을 새 줄을 입력하면 이러한 정규 표현식 연산자를 사용하지 않도록이 \rho 대신 \\rho를 넣어 확인하십시오.

관련 문제