2014-11-28 2 views
2

다음 코드가 있지만 제목이 올바르게 렌더링되지 않습니다.Matplotlib 플롯의 제목에 LaTeX이 올바르게 렌더링되지 않습니다.

#!/usr/bin/python 
import matplotlib.pyplot as plt 
import numpy as np 

t = np.array([0.19641715476064042, 
0.2524989689506581, 
0.3411612727146944, 
0.4232070334074150]) 

c = np.array([0.17999670292553419, 
0.21057542001074211, 
0.2752899228849294, 
0.36577079519040556]) 


plt.rc('text', usetex=True) 
plt.rc('font', family='serif') 
plt.title('$P(A_i = 0| A_j = 0 \forall j < i)$') 

plt.plot(t, '-go', markerfacecolor='w', linestyle= 'dotted', label='n=20') 
plt.plot(c, '-bo', markerfacecolor='w', linestyle= 'dotted', label='n=22') 
plt.legend() 
plt.show() 

다음은 렌더링 된 이미지에서 보는 이미지입니다. 대신 내가 무엇을해야합니까?

enter image description here

답변

2

당신은 이중 "\"를 참조하십시오 "\ f를"

plt.title('$P(A_i = 0| A_j = 0 \\forall j < i)$') 

을 탈출해야합니까? 이로 인해 "\ f"가 양식 피드로 해석되지 않습니다.

+0

그게 전부 야! 고맙습니다. – eleanora

+0

반갑습니다. – TheBigH

4

당신은 특별한 의미를 가지고에서 \f을 방지하기 위해 원시 문자열을 사용할 수 있습니다 : 문자열이 원시 문자열을 만드는, r로 시작하는 것이

plt.title(r'$P(A_i = 0| A_j = 0 \forall j < i)$') 

참고.

+0

대단히 감사합니다! – eleanora

+1

작은 주석 :보다 나은 공간을 위해서'|'대신'\ mid'를 사용하십시오. – MaxNoe

관련 문제