2013-01-03 2 views
3

다음은 iPython의 문제를 보여주는 그림입니다. 이것은 제가 시도한 다른 모든 파이썬 쉘에서 재현 가능합니다.matplotlib가 Windows의 Python 2.7.3에서 str()을 깨습니다.

In [1]: a = 1e-6 

In [2]: str(a) 
Out[2]: '1e-06' 

In [3]: import matplotlib as mpl 

In [4]: str(a) 
Out[4]: '1e-06' 

In [5]: import matplotlib.pyplot as plt 

In [6]: str(a) 
Out[6]: '1e-06' 

In [7]: plt.plot(1.0) 
Out[7]: [<matplotlib.lines.Line2D at 0x262a850>] 

In [8]: str(a) 
Out[8]: '1e-06' 

In [9]: plt.show() 

In [10]: str(a) 
Out[10]: 'ERR' 

여기에는 관련 버전 번호가 나와 있습니다.

In [11]: mpl.__version__ 
Out[11]: '1.2.0' 

In [12]: import numpy as np 

In [13]: np.__version__ 
Out[13]: '1.6.2' 

이 문제는 Python 2.7.3 및 Microsoft Visual Express 2008 C++ 및 Basic을 실행하는 XP Professional 랩 컴퓨터에서 발생합니다. 문제를 추적하는 방법을 모릅니다.

+3

매우 이상합니다. 나는 동작을 재현 할 수 없다 (Python 2.7.3, Windows 7, mpl과 numpy의 같은 버전). 당신은 비주얼 익스프레스 언급. matplotlib를 직접 컴파일 했습니까? 'str'이 어떻게해서 이상한 객체로 설정되었는지,'a' 자체로 변경되었는지,'str'이 변경되었는지 확인하기 위해'type (a)'를 볼 수 있습니까? 또한, 어떤 백엔드를 사용하고 있습니까? – BrenBarn

+2

'plt.show()'를 호출하기 전후에'type (a), id (a), type (str), id (str)'을 출력 할 수 있습니까? – NPE

+0

matplotlib를 포함한 여러 패키지를 설정하는 데 끔찍한 시간이 있었기 때문에 Visual Express에 대해 언급했습니다. 실행 파일에서 설치를 마쳤습니다. 나는이 문제의 뿌리가 내 matplotlib 설치/C 컴파일러에 있다고 의심한다. –

답변

1

Enthought이 질문에 대한 답변입니다. 가장 만족스러운 해결책은 아니지만 위에서 설명한 문제의 근본을 추적하기 위해 며칠이나 며칠을 보내는 것을 정당화 할 수 없습니다.

관련 문제