2013-02-11 15 views
21

मैं matplotlib आयात कर सकते हैं है, लेकिन जब मैं निम्नलिखित चलाने का प्रयास:matplotlib कोई विशेषता 'pyplot'

matplotlib.pyplot(x) 

मैं:

Traceback (most recent call last): 
    File "<pyshell#31>", line 1, in <module> 
     matplotlib.pyplot(x) 
AttributeError: 'module' object has no attribute 'pyplot' 

उत्तर

26

pyplotmatplotlib की एक उप-मॉड्यूल जो नहीं करता है है एक साधारण import matplotlib के साथ आयात नहीं किया जाएगा।

>>> import matplotlib 
>>> print matplotlib.pyplot 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
AttributeError: 'module' object has no attribute 'pyplot' 
>>> import matplotlib.pyplot 
>>> 

यह करने के लिए प्रथागत लगता है:

p = plt.plot(...) 
+0

से ऊपर मेरा उदाहरण देखें मूल रूप से इसका प्रयास करें, एक आयात त्रुटि प्राप्त करें: dlopen (/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/_path.so, 2): नहीं उपयुक्त छवि मिली। मिला: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/m – hanachronism

+1

ऐसा लगता है कि आपकी स्थापना दूषित है, शायद एक साफ़ पुनर्स्थापित करने का प्रयास करें। –

+0

ने इसे काम किया .. स्पष्ट रूप से इंस्टॉलर से वर्तमान matplotlib संस्करण पायथन के 64-बिट संस्करण के साथ संगत नहीं है, इसलिए 32-बिट संस्करण डाउनलोड किया गया है और अब पूरी तरह से काम करता है। फ़िर भी सहायता के लिए धन्यवाद। – hanachronism

11

आप इसे आयात किया था: import matplotlib.pyplot as plt उस समय आपके पास विभिन्न कार्यों और वर्गों इसमें उपयोग कर सकते हैं? matplotlib आयात करना पर्याप्त नहीं है।

>>> import matplotlib 
>>> matplotlib.pyplot 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
AttributeError: 'module' object has no attribute 'pyplot' 

लेकिन

>>> import matplotlib.pyplot 
>>> matplotlib.pyplot 

काम करता है।

pyplot matplotlib का एक सबमिशन है और जब आप matplotlib आयात करते हैं तो तुरंत आयात नहीं किया जाता है।

pyplot आयात करने का सबसे आम रूप

import matplotlib.pyplot as plt 

है इस प्रकार, अपने बयान बहुत लंबा नहीं होगा, जैसे

plt.plot([1,2,3,4,5]) 

matplotlib.pyplot.plot([1,2,3,4,5]) 

और के बजाय

: pyplot एक समारोह नहीं है, यह एक मॉड्यूल है! तो इसे कॉल न करें, परिभाषित कार्यों का उपयोग के बजाय इस मॉड्यूल के अंदर करें।

+0

ने कोशिश की थी और यह समस्या नहीं थी। इसे काम किया .. स्पष्ट रूप से इंस्टॉलर से वर्तमान matplotlib संस्करण पायथन के 64-बिट संस्करण के साथ संगत नहीं है, इसलिए 32-बिट संस्करण डाउनलोड किया गया है और अब पूरी तरह से काम करता है। फ़िर भी सहायता के लिए धन्यवाद। – hanachronism

+0

निश्चित रूप से, हमेशा आपके दुभाषिया के संस्करण से संबंधित लाइब्रेरी का संस्करण स्थापित करें ... –