2012-01-29 13 views
16

में आलेख प्रदर्शित नहीं करता है मेरे पास मेरे वर्चुअलएन्व में पाइप स्थापित matplotlib है और मैं एक साधारण ग्राफ प्लॉट करने की कोशिश कर रहा हूं। मैं एक्लिप्स और पायडेव का उपयोग करता हूं। जब मैं ग्रहण से स्क्रिप्ट चलाता हूं तो यह किसी भी ग्राफ को प्रदर्शित नहीं करता है। मैंने plt.ion() जोड़ने जैसे अन्य प्रश्नों में प्रस्तावित सुझावों का प्रयास किया है, लेकिन यह काम नहीं करता है। मैंने कंसोल में एक ही कोड की कोशिश की है और फिर कुछ भी नहीं। क्या यह मेरी विन्यास के साथ एक समस्या है? यदि ऐसा है तो मैं इसे कैसे ठीक कर सकता हूं?Matplotlib वर्चुअलनव

में नाकाम रहने के कोड है:

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() 

कोड समस्या नहीं है। यह वर्चुअलएन्व से ठीक काम करता है। समस्या तब होती है जब मैं वर्चुअलएन्व में इसका उपयोग करता हूं। समस्या किसी भी तरह से मेरी विन्यास से संबंधित है। और बस चीजों को साफ़ करने के लिए मुझे कोई त्रुटि संदेश नहीं मिलता है। यह सिर्फ इतना है कि खिड़की दिखाई नहीं देगी।

धन्यवाद

+0

आप कोड है कि संपादन के लिए – joaquin

+1

धन्यवाद विफल रहता दिखाना शुरू कर सकता है। जहां तक ​​मैं अब समझ सकता हूं, आपका प्रश्न किसी भी तरह से भ्रामक है क्योंकि ऐसा लगता है कि समस्या (भी) pydev है। यदि आप समस्या के रूप में ग्रहण-pydev को छोड़ सकते हैं (शायद pydev के बजाय कंसोल या निष्क्रिय पर चल रहा है), तो आपको वर्चुअलएन्व के साथ pydev को बदलने के लिए अपने शीर्षक और टैग को संशोधित करना चाहिए। इससे सही लोगों को प्रश्न देखने में मदद मिलेगी। – joaquin

+0

यह कैसे असफल रहा? कोई त्रुटि संदेश? –

उत्तर

9

आपका कोड अजगर 2.7 के साथ पर OSX 10.7 मेरी virtualenv के अंदर काम करता है:

enter image description here

अजगर के किन संस्करणों का आप अपने virtualenv के अंदर उपयोग कर रहे हैं? मेरा अनुमान है कि या तो आपने matplotlib निर्भरता स्थापित नहीं की है या एक स्थापित निर्भरता की स्थापना ठीक से नहीं की गई थी। पाइथन 2.7 पर मैटप्लॉटिब स्थापित करने के लिए मैंने किया है। क्या आप इन चरणों को नए वर्चुअलएन्व में आज़मा सकते हैं और देख सकते हैं कि यह आपके लिए काम करता है या नहीं?

pip install numpy 
pip install scipy 
easy_install matplotlib 
+1

मैं इस कोशिश करता हूँ (हालांकि मैं numpy और scipy स्थापित किया है), लेकिन क्यों आप दूसरों –

+0

के लिए matplotlib और पिप के लिए easy_install का उपयोग किया था मैं अतीत में पिप के साथ 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

देखने के लिए क्या गलत हो रहा है, या तो पिप या easy_install के बजाय Git का उपयोग कर matplotlib की जाँच करें। हम एक और मैन्युअल स्थापित करने जा रहे हैं:

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

यह किस पीआईपी या easy_install के कॉन्फ़िगरेशन को प्रिंट करेगा। "वैकल्पिक बैलेंड डिप्लेन्सीज़" देखें और सुनिश्चित करें कि विंडोज़ उत्पन्न करने वाले कुछ सक्षम हैं (टिंकर, जीटीके +, मैक ओएस एक्स देशी, क्यूटी, काहिरा इत्यादि)। यदि आप देखते हैं कि इनमें से कोई भी उपलब्ध नहीं है, तो आपको matplotlib इंस्टॉल करना जारी रखने से पहले अपने ऑपरेटिंग सिस्टम के लिए इनमें से कुछ पुस्तकालयों को स्थापित करने की आवश्यकता है।

कहते हैं, टी (ubuntu पर: sudo apt-get install tcl-dev tk-dev) स्थापित करने के बाद, तो आप दोबारा चला जब

python setup.py 

आपको लगता है कि टी बैकएंड सक्षम है देखेंगे।

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

साथ आगे बढ़ने से आप सक्रिय होकर चलने चाहिए ... लेकिन उस बिंदु पर आप भी सिर्फ पूरे Git क्लोन निर्देशिका हटा सकते हैं और पिप के साथ स्थापित करने के लिए वापस जाने सकता है।

+0

यह मेरे लिए काम किया। मैं पाइप के साथ स्थापित किया और easy_install के साथ नहीं। – jgomo3

+0

मेरे पर्यावरण में, जादुई रूप से, वैश्विक matplotlib पैकेज TkAgg का उपयोग ठीक से कर रहा था, लेकिन न तो 'tcl-dev' या' tk-dev' स्थापित किया गया था। उस समस्या को हल करना हल करना। 'Easy_install' बनाम' पाइप 'का उपयोग करके कुछ भी नहीं किया। हालांकि, टी/टीसीएल पैकेज स्थापित करने से पहले, मेरा वर्चुअलएन्व सेटअप अभी भी पायथन मॉड्यूल का उपयोग करने और विंडोज़ खींचने में सक्षम था ... –

+0

वर्चुअलएन्ड्स के अंदर टीसीएल के साथ समस्याएं दस्तावेज हैं लेकिन अभी तक तय नहीं लगती हैं। [वर्चुअलएन्व के लिए यह टिकट] देखें (https://github.com/pypa/virtualenv/issues/93)। बेस पायथन इंस्टॉलेशन में टीसीएल फाइलों के पथ को सेट करने के लिए 'activate.bat' को संशोधित करने का सुझाव इसे मेरे लिए तय करता है। – turtlemonvh

2

मैं अपने कंप्यूटर और पर उबंटू 12.04 और पायथन 2.7.3 का उपयोग कर रहा हूं, जब मैं अपने वर्चुअलनेव में matplotlib 1.2.0 का उपयोग करता हूं, तो शो() तब तक काम नहीं करता जब तक कि मैं इसे 1.2.1 तक अपग्रेड नहीं करता ... मेरे पिछले सभी बग दूर चले गए ...

ऐसा करने से आप matplotlib के सभी निर्भरता स्थापित हो जाएगा:

sudo apt-get build-dep python-matplotlib 

matplotlib के नवीनतम संस्करण को प्राप्त करने के लिए आप का उपयोग कर सकते हैं:

pip install matplotlib 

या इसे अपग्रेड:

pip install matplotlib --upgrade 
9

मुझे एक ही समस्या थी, औरका उपयोग कर स्थापित करना pip के बजायइसे हल नहीं किया। अंत में, मुझे पता चला कि समस्या यह थी कि matplotlib को साजिश के लिए कोई बैकएंड नहीं मिला।

मैं निम्न कार्य करके इसे हल (मैं डेबियन खरखरा उपयोग कर रहा हूँ):

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

यह उतना आसान था जितना! (मानक उबंटू 14.04 एलटीएस पर काम करता है) –

+0

ओएसएक्स के लिए कोई समाधान जो यह आसान है? –

4

आप अजगर के अपने सिस्टम संस्करण पर स्थापित matplotlib का संस्करण नहीं है, तो आप के सिस्टम संस्करण के लिए लिंक कर सकते हैं 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 काम है।