Ошибка в модуле математики «ModuleNotFoundError: No module named ‘matplotlib'»
Здравствуйте, пытаюсь программировать математику на Python 3.8.2
Первые две строки:
from math import *
from matplotlib import pyplot as pp
Дальше идут команды pyplot.plot(y) и pyplot.show()
При запуске выдает ошибку в теме вопроса.
Я так понимаю, что нужно установить этот самый matplot, а мне казалось, что он сразу там включен.
Тогда как это сделать на Windows 10? Я почитал немного, типа нужно через папку scripts. Я позапускал все файлы, что там есть типа pip или easy_install, но консоль появляется на мгновенье и тут же закрывается.
Ума не приложу, что делать
Голосование за лучший ответ
Если ты при установке python отмечал галочкой «Add to python (твоя версия)» то в cmd пропиши: pip install matplot
Похожие вопросы
Как исправить: нет модуля с именем matplotlib
Одна распространенная ошибка, с которой вы можете столкнуться при использовании Python:
no module named ' matplotlib '
Эта ошибка возникает, когда Python не обнаруживает библиотеку matplotlib в вашей текущей среде.
В этом руководстве представлены точные шаги, которые вы можете использовать для устранения этой ошибки.
Шаг 1: pip устанавливает matplotlib
Поскольку matplotlib не устанавливается автоматически вместе с Python, вам нужно будет установить его самостоятельно. Самый простой способ сделать это — использовать pip , менеджер пакетов для Python.
Вы можете запустить следующую команду pip для установки matplotlib:
pip install matplotlib
В большинстве случаев это исправит ошибку.
Шаг 2: Установите пип
Если вы все еще получаете сообщение об ошибке, вам может потребоваться установить pip. Используйте эти шаги , чтобы сделать это.
Вы также можете использовать эти шаги для обновления pip до последней версии, чтобы убедиться, что он работает.
Затем вы можете запустить ту же команду pip, что и раньше, чтобы установить matplotlib:
pip install matplotlib
На этом этапе ошибка должна быть устранена.
Шаг 3: проверьте версии matplotlib и pip
Если вы все еще сталкиваетесь с ошибками, возможно, вы используете другую версию matplotlib и pip.
Вы можете использовать следующие команды, чтобы проверить, совпадают ли ваши версии matplotlib и pip:
which python python --version which pip
Если две версии не совпадают, вам нужно либо установить более старую версию matplotlib, либо обновить версию Python.
Шаг 4: Проверьте версию matplotlib
После того, как вы успешно установили matplotlib, вы можете использовать следующую команду, чтобы отобразить версию matplotlib в вашей среде:
pip show matplotlib Name: matplotlib Version: 3.1.3 Summary: Python plotting package Home-page: https://matplotlib.org Author: John D. Hunter, Michael Droettboom Author-email: matplotlib-users@python.org License: PSF Location: /srv/conda/envs/notebook/lib/python3.7/site-packages Requires: cycler, numpy, kiwisolver, python-dateutil, pyparsing Required-by: seaborn, scikit-image Note: you may need to restart the kernel to use updated packages.
Примечание. Самый простой способ избежать ошибок с версиями matplotlib и Python — просто установить Anaconda , набор инструментов, предустановленный вместе с Python и matplotlib и бесплатный для использования.
Дополнительные ресурсы
В следующих руководствах объясняется, как исправить другие распространенные проблемы в Python:
Решение ошибки «ModuleNotFoundError: No module named ‘…’»
В Python может быть несколько причин возникновения ошибки ModuleNotFoundError: No module named . :
- Модуль Python не установлен.
- Есть конфликт в названиях пакета и модуля.
- Есть конфликт зависимости модулей Python.
Рассмотрим варианты их решения.
Модуль не установлен
В первую очередь нужно проверить, установлен ли модуль. Для использования модуля в программе его нужно установить. Например, если попробовать использовать numpy без установки с помощью pip install будет следующая ошибка:
Traceback (most recent call last): File "", line 1, in ModuleNotFoundError: No module named 'numpy'
Для установки нужного модуля используйте следующую команду:
pip install numpy # или pip3 install numpy
Или вот эту если используете Anaconda:
conda install numpy
Учтите, что может быть несколько экземпляров Python (или виртуальных сред) в системе. Модуль нужно устанавливать в определенный экземпляр.
Конфликт имен библиотеки и модуля
Еще одна причина ошибки No module named — конфликт в названиях пакета и модуля. Предположим, есть следующая структура проекта Python:
demo-project └───utils __init__.py string_utils.py utils.py
Если использовать следующую инструкцию импорта файла utils.py, то Python вернет ошибку ModuleNotFoundError .
>>> import utils.string_utils
Traceback (most recent call last):
File "C:\demo-project\utils\utils.py", line 1, in
import utils.string_utils
ModuleNotFoundError: No module named 'utils.string_utils';
'utils' is not a packageВ сообщении об ошибке сказано, что «utils is not a package». utils — это имя пакета, но это также и имя модуля. Это приводит к конфликту, когда имя модуля перекрывает имя пакета/библиотеки. Для его разрешения нужно переименовать файл utils.py.
Конфликт зависимостей модулей Python
Иногда может существовать конфликт модулей Python, который и приводит к ошибке No module named.
Следующее сообщение явно указывает, что _numpy_compat.py в библиотеке scipy пытается импортировать модуль numpy.testing.nosetester .
Traceback (most recent call last): File "C:\demo-project\venv\ Lib\site-packages\ scipy\_lib\_numpy_compat.py", line 10, in from numpy.testing.nosetester import import_nose ModuleNotFoundError: No module named 'numpy.testing.nosetester'Ошибка ModuleNotFoundError возникает из-за того, что модуль numpy.testing.nosetester удален из библиотеки в версии 1.18. Для решения этой проблемы нужно обновить numpy и scipy до последних версий.
pip install numpy --upgrade pip install scipy --upgradeПроблема с пакетом matplotlib в проекте на pythone 3.6: импорт в PyCharm ведёт к AttributeError: module 'matplotlib' has no attribute 'verbose'
Возникла проблема. Работаю на Mac os 10.13.3 , среда PyCharm Professional 2017.3. Python 3.6 При компиляции данной программы:
import numpy as np import matplotlib.pyplot as plt x = np.array([2, 5, -6, 7, 4, 3, 8, 9, 1, -2], dtype=float) y = np.array([-1, 77, -297, 249, 33, 9, 389, 573, -3, -21], dtype=float) def lagranz(x, y, t): z = 0 for j in range(len(y)): p1 = 1 p2 = 1 for i in range(len(x)): if i == j: p1 = p1 * 1 p2 = p2 * 1 else: p1 = p1 * (t - x[i]) p2 = p2 * (x[j] - x[i]) z = z + y[j] * p1 / p2 return z xnew = np.linspace(np.min(x), np.max(x), 100) ynew = [lagranz(x, y, i) for i in xnew] plt.plot(x, y, 'o', xnew, ynew) plt.grid(True) plt.show()Компилятор выдает такую ошибку:
Traceback (most recent call last): File "/Users/Korotkihvm/PycharmProjects/TheLagrangeInterpolationPolynomial/method.py", line 2, in import matplotlib.pyplot as plt File "/Users/Korotkihvm/PycharmProjects/TheLagrangeInterpolationPolynomial/venv/lib/python3.6/site-packages/matplotlib/pyplot.py", line 115, in _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup() File "/Users/Korotkihvm/PycharmProjects/TheLagrangeInterpolationPolynomial/venv/lib/python3.6/site-packages/matplotlib/backends/__init__.py", line 62, in pylab_setup [backend_name], 0) File "/Applications/PyCharm.app/Contents/helpers/pycharm_matplotlib_backend/backend_interagg.py", line 17, in verbose = matplotlib.verbose AttributeError: module 'matplotlib' has no attribute 'verbose'Кто может подсказать в чем проблема?