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.