2012-03-04 28 views
18

संभव डुप्लिकेट:
matplotlib does not show my drawings although I call pyplot.show()क्यों pyplot.show() काम नहीं करता है?

मैं matplotlib करने के लिए एक नौसिखिया हूँ और इस समस्या का सामना करना पड़ा। मैं उबंटू प्रणाली का उपयोग कर रहा हूं। मैंने Matplotlib 0.9 9 के साथ शुरुआत की और महसूस किया कि मुझे वास्तव में नए संस्करणों में "ट्रिपलॉट" की नई सुविधा की आवश्यकता है। इसलिए मैंने

git clone git://github.com/matplotlib/matplotlib.git 

द्वारा स्थापित नवीनतम संस्करण डाउनलोड किया और इसे स्थापित किया। हालांकि, जब मैं पाइथन के साथ इंटरैक्टिव रूप से काम करता हूं, pyplot.show() मुझे वह आंकड़ा नहीं दिखाता है, और न ही किसी भी त्रुटि संदेश के साथ इसका जवाब दिया। pyplot.show() ने matplotlib 0.9 9 के पुराने संस्करण में काम किया था।

अधिक विशिष्ट होने के लिए, मुझे पैकेज के अंदर "matplotlib" या मॉड्यूल आयात करने में कोई समस्या नहीं हुई; मैं आंकड़ों के समूह की पीडीएफ फाइलें उत्पन्न कर सकता हूं, लेकिन मेरे कोड के अंत में pyplot.show() टाइप करके मैं आंकड़ा दिखा सकता हूं। क्या कोई मेरी मदद कर सकता है? धन्यवाद!

+0

यह एक करने के लिए हो सकता है इसी तरह के प्रश्न: http://stackoverflow.com/questions/7534453/matplotlib-does-not-show-my-drawings-although-i-call-pyplot -शो –

+0

आप अपना प्रोग्राम कैसे चला रहे हैं? यदि आप मानक इंटरैक्टिव पायथन दुभाषिया में हैं, तो 'शो' काम नहीं करेगा क्योंकि इसे एक अलग धागे में चलाने की जरूरत है, और इंटरैक्टिव दुभाषिया इसे अवरुद्ध करता है। 'ipython' और अन्य उन्नत इंटरैक्टिव गोले आंशिक रूप से इस कारण से हैं। (और उनके पास उपयोगी सुविधाओं का _ton_ है जो मानक इंटरैक्टिव दुभाषिया के पास नहीं है।) –

+0

अन्यथा, यह संभव है कि आपके पास 'Tk' का विकास संस्करण या कोई अन्य गुई पुस्तकालय स्थापित न हो, और इसलिए 'matplotlib' डिफ़ॉल्ट इंटरैक्टिव बैकएंड बनाने में सक्षम नहीं था। –

उत्तर

14

मैं एक ही मुद्दा था और उचित प्रदर्शन बैकएंड निर्धारित करके इसे हल, matplotlib does not show my drawings although I call pyplot.show()

निम्नलिखित वहाँ इस लक्ष्य को हासिल करने के लिए दो तरीके हैं:

1.Set अपने कोड में बैकएंड, सही matplotlib आयात करने के बाद :

import matplotlib 
matplotlib.rcParams['backend'] = "Qt4Agg" 

2.Or (matplotlib.matplotlib_fname द्वारा दिए गए के रूप में()) अपने matplotlibrc फाइल के अंदर अपने बैकएंड परिभाषित:

backend  : Qt4Agg 

अधिक यहाँ जानकारी: http://matplotlib.sourceforge.net/users/customizing.html

+0

आपने मुझे समय का गुच्छा बचाया, धन्यवाद। – Arty

संबंधित मुद्दे