ImportError: matplotlib.pyplot नाम का कोई मॉड्यूल नहीं


149

मैं वर्तमान में matplotlib का अभ्यास कर रहा हूं। यह पहला उदाहरण है जिसका मैं अभ्यास करता हूं।

#!/usr/bin/python

import matplotlib.pyplot as plt

radius = [1.0, 2.0, 3.0, 4.0]
area = [3.14159, 12.56636, 28.27431, 50.26544]

plt.plot(radius, area)
plt.show()

जब मैं इस स्क्रिप्ट को चलाता हूं python ./plot_test.py, तो यह सही ढंग से प्लॉट दिखाती है। हालाँकि, मैं इसे स्वयं चलाता हूँ ./plot_test.py, यह अनुसरण करता है:

Traceback (most recent call last):
File "./plot_test.py", line 3, in <module>
  import matplotlib.pyplot as plt
ImportError: No module named matplotlib.pyplot

क्या अजगर विभिन्न स्थानों में माटप्लोटलिब की तलाश करता है?

पर्यावरण है:

Mac OS X 10.8.4 64bit
built-in python 2.7

स्तब्ध, स्किपी, माटाप्लोटिब के साथ स्थापित किया गया है:

sudo port install py27-numpy py27-scipy py27-matplotlib \
py27-ipython +notebook py27-pandas py27-sympy py27-nose

इसके बजाय #! / usr / bin / env python का उपयोग करने का प्रयास करें
Uku Loskit

1
#! / usr / bin / env अजगर ने काम नहीं किया, वही त्रुटि होती है।
निमिशयन

जवाबों:


48

आपके पास अपनी मशीन पर दो अजगर स्थापित हैं, एक मानक अजगर है जो मैक ओएसएक्स के साथ आता है और दूसरा वह है जिसे आप बंदरगाहों के साथ स्थापित करते हैं (यह वही है जो matplotlibइसकी लाइब्रेरी में स्थापित किया गया है, वह जो मैकसैक्स के साथ नहीं आता है) ।

/usr/bin/python

क्या मानक मैक पायथन है और चूंकि matplotlibआपके पास यह नहीं है कि आपको हमेशा अपनी स्क्रिप्ट को पोर्ट्स के साथ स्थापित के साथ शुरू करना चाहिए।

यदि python your_script.pyकाम करता है तो #!निम्न में बदलें :

#!/usr/bin/env python

या अजगर इंटरप्रेटर का पूरा रास्ता matplotlibअपने पुस्तकालय में स्थापित किया है।


3
क्या आप थोड़ा और विस्तृत कर सकते हैं। मैं उन्हीं मुद्दों का सामना कर रहा हूं।
आकाश कांडपाल

1
क्या आप कृपया चरणों के साथ प्रदान कर सकते हैं। मैं यह भी नहीं समझ पा रहा हूं कि आप मुझे समझाने की कोशिश कर रहे हैं क्योंकि मैं अपने मैक में उसी समस्या का सामना कर रहा हूं
भास्कर

ऐसा तब हो सकता है जब आपके पास अपनी वर्किंग डायरेक्टरी में फाइल का नाम matplotlib.py हो
अभिषेक पारिख

4
Python3 में, का एक अलग स्थापना matplotlib का उपयोग कर python3 -m pip install matplotlibत्रुटि को हल किया। उबंटू 16.04 पर परीक्षण किया गया।
सिरकेव्स

159

pip आपके जीवन को आसान बना देगा!

चरण 1: पाइप स्थापित करें - जांचें कि क्या आपके पास पहले से ही अजगर कंसोल में पाइप लिखकर पाइप है। यदि आपके पास पाइप नहीं है, तो एक python स्क्रिप्ट प्राप्त करें, जिसे get-pip.py कहा जाता है, यहां से: https://pip.pypa.io/en/latest/installing.html या सीधे यहां: https: //bootstrap.pypa .io / get-pip.py (आपको Save As .. का उपयोग करना पड़ सकता है)

चरण 2: इस बात पर ध्यान दें कि फ़ाइल कहाँ सहेजी गई है और कमांड प्रॉम्प्ट से डायरेक्टरी को सीडी। पाइप स्थापित करने के लिए get-pip.py स्क्रिप्ट चलाएँ। आप इस पंक्ति को cmd में उद्धरणों के भीतर लिख सकते हैं: "अजगर। \ get-pip.py"

चरण 3: अब cmd प्रकार में: pip install matplotlib

और आप के माध्यम से होना चाहिए।


13
प्रश्न में, यह निर्दिष्ट है कि पुस्तकालय पहले से ही स्थापित है
tashuhka

4
वर्तमान में लिखे गए इस उत्तर के लिए बहुत सारे अपवोट हैं। पाइप को डाउनलोड करने के बजाय, चूंकि वे (macosx पर) पहले से ही macports हैं, ओपी को चलना चाहिए sudo port install pip। दूसरा, pipअपने मौजूदा सेटअप से परे उपयोगी होने के लिए , उन्हें sudo port install virtualenvस्थानीय अजगर "आभासी वातावरण" (शायद कहा जाता है python3-virtualenv) के लिए भी करना चाहिए । फिर, एक नया virtualenv स्थापित करने और दर्ज करने (सक्रिय करने) के बाद, virtualenv के pip install ...अंदर चलाएं । अंत में, अजगर स्क्रिप्ट को अभी भी #!/usr/bin/env pythonकिसी भी काम करने के लिए इसका उपयोग करने की आवश्यकता है ।
माइकल

उबंटू पर मैंने अजगर का इस्तेमाल किया ।/get-pip.py --user और जिसने मेरे लिए काम किया। thx
LeleMarieC

36

यदि आप पायथन 2 का उपयोग कर रहे हैं, तो बस चलाएं

sudo apt-get install python-matplotlib

सबसे अच्छा तरीका matplotlibहै:

pip install matplotlib

पिछला तरीका आपको पुराना संस्करण दे सकता है matplotlib


क्षमा करें, मैंने सिस्टम निर्दिष्ट नहीं किया है, मैं डेबियन का उपयोग कर रहा हूं, सिमिलरी सिस्टम काम करेगा।
k.biao

4
एनपी, लेकिन सवाल में कहा गया है: The environment is: Mac OS X 10.8.4 64bit built-in python 2.7
लैंटिंग

आप अपने OS X
k.biao

Ubuntu पर आप sudo apt-get install python-matplotlibpython3 के लिए उपयोग कर सकते हैं ।
user2023370

24

इसने मेरे लिए काम किया, शीतल कौल से प्रेरित

pip uninstall matplotlib
python3 -m pip install matplotlib

मुझे पता था कि यह गलत जगह पर स्थापित है जब यह काम करता है:

python2.7
import matplotlib

12

अजगर का पहला चेक संस्करण

पायथन 2 वेसियन के लिए

sudo apt-get install python-matplotlib

पायथन 3 संस्करण के लिए

sudo apt-get install python3-matplotlib

यदि आप अजगर संस्करण के साथ matplotlib स्थापना को मिस-मैच करते हैं, तो आपको कोई मॉड्यूल त्रुटि नहीं मिलेगी क्योंकि उस संस्करण के लिए कोई भी मॉड्यूल बाहर नहीं निकलता है।




1

मेरे पास एक समान मुद्दा था जिसे मैंने हल किया और यहाँ मेरा मुद्दा है:

मैंने python3 पर सब कुछ सेट किया, लेकिन मैं उदाहरण के लिए अपनी फ़ाइल को कॉल करने के लिए अजगर का उपयोग कर रहा था: मैं "python mnist.py" टाइप कर रहा था ... चूंकि मेरे पास python3 पर सब कुछ है, यह सोच रहा था कि मैं अजगर 2.7 का उपयोग करने की कोशिश कर रहा था।

सुधार: "python3 mnist.py" - 3 ने सभी अंतर बनाए

मैं किसी भी तरह से अजगर या पाइप का विशेषज्ञ नहीं हूं, लेकिन निश्चित रूप से पाइप और पाइप 3 के बीच अंतर है (पाइप को अजगर 2.7 से बांधा गया है) (पाइप 3 को अजगर 3.6 से बांधा गया है)

तो 2.7 के लिए स्थापित करते समय: पाइप स्थापित जब 3.6 के लिए स्थापित करते हैं: pip3 स्थापित करें

और 2.7 के लिए अपना कोड चलाते समय: 3.6 के लिए अपना कोड चलाते समय अजगर करें: अजगर 3

मुझे उम्मीद है इससे किसी को सहायता मिलेगी!


1

सामान्य फ़ीड में टिप्पणी अवरुद्ध है। मुझे लिखें कि ऐसा क्यों होता है, ठीक उसी तरह जैसे आपने अपने ऐप को निष्पादित किया था।

यदि आपने स्क्रिप्ट, पाइथन या ipython को किसी अन्य वातावरण में चलाया है, तो आप इसे स्थापित करते हैं, तो आपको ये मुद्दे मिलेंगे।

इसे पुन: स्थापित करने को भ्रमित न करें। Matplotlib सामान्य रूप से आपके उपयोगकर्ता वातावरण में स्थापित है, sudo में नहीं। आप माहौल बदल रहे हैं।

तो पाइप को फिर से स्थापित न करें, बस सुनिश्चित करें कि आप इसे सूडो के रूप में चला रहे हैं यदि आपने इसे सूडो वातावरण में स्थापित किया है।


0

जब तक मैंने अपने .bash_profile की जांच करने के बारे में नहीं सोचा था, तब तक मैंने अपना सिर इस पर घंटों तक हिलाया। मेरे पास python3 के लिए सूचीबद्ध पथ नहीं था इसलिए मैंने निम्नलिखित कोड जोड़ा:

# Setting PATH for Python 3.6
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.6/bin:${PATH}"
export PATH

और फिर के साथ फिर से स्थापित matplotlib sudo pip3 install matplotlib। सभी अब खूबसूरती से काम कर रहे हैं।


0

इसलिए मैंने python3 -m pip install matplotlib' thenplt` के रूप में आयात matplotlib.pyplot का उपयोग किया और यह काम किया।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.