2012-01-29 3 views
16

내 virtualenv에 pip가 설치되어 있고 간단한 그래프를 그려보고 있습니다. Eclipse와 PyDev를 사용합니다. Eclipse에서 스크립트를 실행할 때 그래프가 표시되지 않습니다. plt.ion() 추가와 같은 다른 질문에서 제안 된 제안을 시도했지만 그 중 하나는 작동하지 않습니다. 나는 또한 콘솔에서 같은 코드를 다시 시도했다. 구성에 문제가 있습니까? 그렇다면 어떻게 해결할 수 있습니까?Matplotlib가 virtualenv에 그래프를 표시하지 않습니다.

실패한 코드는 다음과 같습니다

import matplotlib.pyplot as plt 
    radius = [1.0, 2.0, 3.0, 4.0, 5.0, 6.0] 
    area = [3.14159, 12.56636, 28.27431, 50.26544, 78.53975, 113.09724] 
    plt.plot(radius, area) 
    plt.show() 

코드는 문제가되지 않습니다. 그것은 virtualenv에서 잘 작동합니다. 문제는 virtualenv에서 사용할 때입니다. 문제는 어떻게 든 내 구성과 관련이 있습니다. 그리고 일을 정리하기 위해 나는 어떤 오류 메시지도 얻지 못합니다. 창문이 나타나지 않는 것뿐입니다.

감사

+0

편집에 실패하여 – joaquin

+1

코드를 표시하기 시작할 수 있습니다. 지금까지 이해할 수있는 한, 귀하의 질문은 문제가 (또한) pydev임을 나타내는 것처럼 오해의 소지가 있습니다. eclipse-pydev를 문제 (아마도 콘솔에서 실행되거나 pydev 대신에 실행 중임)로 버릴 수 있다면, virtualenv로 pydev를 변경하기 위해 제목과 태그를 수정해야합니다. 이것은 적절한 사람들이 질문을 보는 데 도움이 될 것입니다. – joaquin

+0

어떻게 실패 했습니까? 오류 메시지가 있습니까? –

답변

9

에 코드를 파이썬 2.7 OSX 10.7에 내 VIRTUALENV 내에서 작동합니다

당신이 당신의 VIRTUALENV 내부에서 사용하는 파이썬의 버전은 무엇

enter image description here

? 내 추측으로는 matplotlib 종속성을 설치하지 않았거나 설치된 종속성 설치가 제대로 수행되지 않았다는 것입니다. 파이썬 2.7에서 matplotlib을 설치 한 것입니다. 새로운 virtualenv에서 이러한 단계를 시도해 볼 수 있습니까?

pip install numpy 
pip install scipy 
easy_install matplotlib 
+1

나는 이것을 시험해 보겠다. (numpy와 scipy를 설치했지만) matplotlib에 easy_install을 사용하고 다른 사람들에게 pip을 사용 했는가? –

+0

나는 과거 pip에서 matplotlib 설치에 문제가 있었다. – drbunsen

+0

안녕하세요 .. 일했습니다 :) .. 문제는 내가 matplotlib 설치를 위해 easy_install을 사용하지 않았다는 것입니다. 피클에 문제가있는 것 같습니다. 답변 해주셔서 감사합니다! –

6

첫째로, 당신은 체크 아웃 할 수 있습니다 :

http://matplotlib.org/faq/installing_faq.html#matplotlib-compiled-fine-but-nothing-shows-up-when-i-use-it

, 무슨 무슨 일이 일어나고 있는지 볼 PIP 또는 easy_install을 하나 대신 자식을 사용하기 matplotlib을 확인합니다. 더 수동 설치를 할 것입니다.

git clone [email protected]:matplotlib/matplotlib.git 
cd matplotlib 
python setup.py 

이렇게하면 pip 또는 easy_install의 구성이 인쇄됩니다. "OPTIONAL BACKEND DEPENDENCIES"를 살펴보고 윈도우를 생성하는 것들 중 일부 (Tkinter, Gtk +, Mac OS X native, Qt, Cairo 등)가 활성화되어 있는지 확인하십시오. 이들 중 어느 것도 사용할 수 없다고 생각되면 matplotlib 설치를 계속하기 전에 운영 체제 용 라이브러리 중 일부를 설치해야합니다.

(우분투 : sudo apt-get install tcl-dev tk-dev) 말, TK에를 설치 한 후, 당신은 다시 실행하면

python setup.py 

당신은 Tk의 백엔드 이 활성화는 것을 볼 수 있습니다.

python setup.py build && python setup.py install 

으로 진행하면됩니다.하지만 그 시점에서 전체 자식 복제본 디렉토리를 삭제하고 pip로 다시 설치할 수도 있습니다.

+0

그것은 나를 위해 일했다. pip와 함께 설치하고 easy_install과 함께 설치하지 않았습니다. – jgomo3

+0

저의 환경에서는 마술처럼 글로벌 matplotlib 패키지가 TkAgg를 사용하고 있었지만'tcl-dev' 나'tk-dev'도 설치되지 않았습니다. 문제를 해결 한 해결. 'easy_install'과'pip'를 사용하면 아무것도하지 않았습니다. 그러나 Tk/Tcl 패키지를 설치하기 전에 virtualenv 설정은 여전히 ​​Tk 파이썬 모듈을 사용하여 창을 그릴 수있었습니다. –

+0

virtualenvs 내부의 tcl 문제는 문서화되었지만 아직 해결되지 않은 것 같습니다. [this ticket for virtualenv] (https://github.com/pypa/virtualenv/issues/93)를 참조하십시오. 'activate.bat'를 수정하여 기본 Python에서 TCL 파일의 경로를 설정하는 제안은 저를 위해 그것을 고쳤습니다. – turtlemonvh

2

내 virtualenv에서 matplotlib 1.2.0을 사용할 때 내 컴퓨터에 Ubuntu 12.04와 Python 2.7.3을 사용하고 있고, 1.2.1로 업그레이드 할 때까지 show()가 작동하지 않습니다. 이전에 가지고 있던 모든 버그가 사라졌습니다.이렇게함으로써

당신이하기 matplotlib의 모든 종속성을 설치합니다 : 당신이 사용할 수있는

sudo apt-get build-dep python-matplotlib 

가하기 matplotlib의 최신 버전을 다운로드하려면 다음

pip install matplotlib 

을하거나 업그레이드 :

pip install matplotlib --upgrade 
9

동일한 문제가 발생하여 matplotlib을 사용하여를 설치하십시오. pip 대신이이를 해결하지 못했습니다. 결국 문제는 단순히 matplotlib이 플로팅을위한 백엔드를 찾을 수 없다는 것을 알게되었습니다. 당신은 파이썬의 시스템 버전에 설치하기 matplotlib의 버전이있는 경우, 다음의 시스템 버전에 연결할 수

pip uninstall matplotlib 
sudo apt-get install tcl-dev tk-dev 
pip install matplotlib 
+1

그것은 그 것처럼 쉽습니다! (표준 Ubuntu 14.04 LTS에서 작동) –

+0

OSX 용 솔루션은 간단합니다. –

4

:

나는 (내가 씩씩 거리는 데비안을 사용하고) 다음을 수행하여 그것을 해결 matplotlib. 내 컴퓨터에서 나는 다음과 같은 한 :

cd $VIRTUAL_ENV/lib/python2.7/site-packages 
ln -s /usr/lib/pymodules/python2.7/matplotlib . 
ln -s /usr/lib/pymodules/python2.7/matplotlib-1.1.1rc . 

이것은 VIRTUALENV에서 일을 점점하기 matplotlib에 많은 문제를 피할 수 있지만 (이 컴퓨터에 너무 나쁘지 않다)하기 matplotlib의 시스템 버전을 사용하여 당신을 제한합니다.

이 방법을 사용하면 --no-site-packages를 사용할 수도 있지만 matplotlib는 여전히 작동합니다.

관련 문제