Jupyter模块未找到错误:没有名为matplotlib的模块。

33

我目前正在尝试做基本的 Python - Jupyter 项目。

在 matplotlib 中遇到了以下错误:

jupyter-error 的截图enter image description here

ModuleNotFoundError: 没有名为 'matplotlib' 的模块

我尝试更新、重新安装 conda 和 pip 中的 matplotlib,但仍然无法解决问题。

欢迎任何有建设性反馈的意见。


6
我猜想你的 ipython kernel 指向的是一个没有安装 matplotlib 的 Python 版本。 - Abdou
您需要在与笔记本所选内核相关的环境中安装模块。在右上角,应该指示您正在使用哪个内核。转到“Kernel” --> “Change Kernels”,尝试选择另一个内核,例如“Root”。 - pylang
1
在某些情况下,即使正确激活内核(内核已安装matplotlib),仍可能无法找到该软件包。 如果您尝试了本主题中提到的所有其他方法,仍然无法使其工作,请考虑在jupyter笔记本单元格中直接安装它:!pip install matplotlib - khuang834
9个回答

46

1
解决方案使用“--user”关键字成功运行。 - compski
1
这是使库在笔记本中可导入的唯一可靠方法。其他建议对于我使用的Jupyter Lab版本3.2.5不起作用。 我尝试过并失败了pip install -user matplotlib,以及在笔记本的单元格中执行相同的操作。 - Yu Shen

6

我之前也遇到过同样的问题。最终发现它正在使用系统Python版本,尽管我已经激活了虚拟环境。

以下方法最终解决了我的问题:

如果你使用的是一个名为myvenv的虚拟环境,请先通过以下命令激活它:

source activate myvenv

然后使用以下命令安装模块 ipykernel:

pip install ipykernel

最后运行(在下面的代码中将myvenv更改为您的环境名称):
ipykernel install --user --name myvenv --display-name "Python (myvenv)" 

现在重新启动笔记本电脑,它应该能够捕捉到您虚拟环境中的Python版本。

5

虽然@Frederic的最高票方案基于JakeVDP 2017年的博客文章,但它完全忽略了该博客文章中提到的%pip魔术命令。自2017年以来,该命令已经落入了主流的IPython中,从Jupyter笔记本内部访问连接到当前IPython内核和环境的正确pip实例的最简单方法是:

%pip install matplotlib

请查看当前可用的魔术命令列表 IPython 文档


5

打开终端并将目录更改为安装Python的Scripts文件夹。 然后键入以下命令并按Enter键:

pip install matplotlib

希望这能解决问题。

3
如果我这样做,我会得到“Requirement already satisfied”。但是在Python中,我仍然得到“module not found”... - Kokodoko

4

一般来说,你应该尝试在Python虚拟环境中工作。一旦这样做了,你就需要告诉JupyterLab关于它。例如:

# create a virtual environment
# use the exact python you want to work with in this step
python3.9 -m venv myvenv
# 'activate' (or 'enter') it
source myvenv/bin/activate
# install the exact stuff you want to use in that environment
pip install matplotlib
# now tell JupyterLabs about the environment
python -m ipykernel install --user --name="myenv" --display-name="My project (myenv)"
# start it up 
jupyter notebook mynotebook
# if you now look under 'Kernel->Change kernel', your 'myenv' should be there
# select it (restart kernel etc if needed) and you should be good

谢谢,以下命令: python -m ipykernel install --user --name="myenv" --display-name="My project (myenv)" 解决了这个问题。 - Jean-Pat

2
我的问题是jupyter默认使用的是python3,你可以通过查看右上角(见附图)来确定jupyter正在运行的python版本。 enter image description here 当我执行pip install时,它会安装默认在mac上安装的Python 2.7的依赖项。解决方法如下:
> pip3 install matplotlib

1
安装matplotlib时遇到了同样的问题,先在创建虚拟环境之前安装matplotlib解决了这个问题。然后我创建了虚拟环境并在其中安装了matplotlib,再开始使用jupyter notebook。

0
如果模块已安装但仍然出现此错误,则可能需要运行特定的Jupyter命令: python -m jupyter notebook 这也可以工作: sudo jupyter notebook --allow-root

0
  1. 在Jupyter Notebook中输入

print(sys.executable)

这给了我以下结果 /Users/myusername/opt/anaconda3/bin/python

  1. 打开终端,进入文件夹 /Users/myusername/opt/anaconda3/bin/

  2. 输入以下内容: python3 -m pip install matplotlib

  3. 重新启动jupyter笔记本(我的是vs code mac ox)


1
这会显示“sys未定义”。 - Kokodoko

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接