ImportError: нет модуля с именем matplotlib.pyplot
В настоящее время я практикую 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()
Когда я запускаю этот script с 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
Посмотрите ли python на matplotlib в разных местах?
Среда:
Mac OS X 10.8.4 64bit
built-in python 2.7
numpy, scipy, matplotlib устанавливается с помощью:
sudo port install py27-numpy py27-scipy py27-matplotlib \
py27-ipython +notebook py27-pandas py27-sympy py27-nose
Ответы
Ответ 1
На вашем компьютере установлено два питона: один стандартный питон, который поставляется с Mac OSX, а второй - тот, который вы установили с портами (это тот, который имеет matplotlib
, установленный в своей библиотеке, тот, который поставляется с macosx нет).
/usr/bin/python
Является стандартным mac python и, поскольку он не имеет matplotlib
, вы всегда должны запускать свой script с тем, который установлен с портами.
Если python your_script.py
работает, измените значение #!
на:
#!/usr/bin/env python
Или поместите полный путь к интерпретатору python, который имеет matplotlib
, установленный в его библиотеке.
Ответ 2
pip
сделает вашу жизнь легкой!
Шаг 1: Установите pip. Проверьте, есть ли у вас пипс, просто написав pip в консоли python. Если у вас нет пипа, получите python script с именем get-pip.py, здесь: https://pip.pypa.io/en/latest/installing.html или прямо здесь: https://bootstrap.pypa.io/get-pip.py (Возможно, вам придется использовать Save As..)
Шаг 2: обратите внимание на то, где файл был сохранен, и cd из командной строки. Запустите get-pip.py script, чтобы установить pip.
Вы можете написать в cmd эту строку в кавычках: "python.\Get-pip.py"
Шаг 3: Теперь в формате cmd: pip install matplotlib
И вы должны пройти.
Ответ 3
Если вы используете Python 2, просто запустите
sudo apt-get install python-matplotlib
Лучший способ получить matplotlib
:
pip install matplotlib
причина, по которой предыдущий способ может дать вам старую версию matplotlib
Ответ 4
Это сработало для меня, вдохновленный Sheetal Kaul
pip uninstall matplotlib
python3 -m pip install matplotlib
Я знал, что он установлен не в том месте, когда это работало:
python2.7
import matplotlib
Ответ 5
У меня была похожая проблема, которую я решил, и вот моя проблема:
Я установил все на python3, но я использовал python для вызова моего файла, например: я набирал "python mnist.py"... так как у меня все на python3, я думал, что пытаюсь использовать python 2.7
Исправление: "python3 mnist.py" - 3 сделали все различия
Я ни в коем случае не эксперт в python или pip, но между pip и pip3 определенно есть разница (pip связан с python 2.7) (pip3 связан с python 3.6)
поэтому при установке для 2.7 do: pip install при установке для 3.6 do: pip3 install
и при запуске кода для 2.7 do: python при запуске кода для 3.6 do: python3
Я надеюсь, что это помогает кому-то!
Ответ 6
Я часами прокручивал голову, пока не подумал о проверке моего .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
. Все прекрасно работает сейчас.
Ответ 7
Комментарии в нормальном фиде заблокированы. Позвольте мне написать, почему это происходит, так же, как когда вы запускали свое приложение.
Если вы запускали сценарии, python или ipython в другой среде, отличной от той, в которой вы их установили, вы получите эти проблемы.
Не путайте переустановку. Matplotlib обычно устанавливается в вашей пользовательской среде, а не в sudo. Вы меняете окружающую среду.
Так что не переустанавливайте pip, просто убедитесь, что вы используете его как sudo, если вы установили его в среде sudo.