Jupyter Lab中%matplotlib inline报错,求实现等效功能的解决方案
解决Jupyter Lab中
%matplotlib inline报错的替代方案 我之前也踩过这个坑,碰到过一模一样的「JavaScript output is disabled in JupyterLab」报错,试了几个方法都管用,分享给你:
方案1:改用交互式后端%matplotlib widget(推荐)
这是Jupyter Lab官方推荐的替代方案,功能比inline还强,支持图表缩放、平移、悬停查看数据等交互操作:
- 直接把原来的
%matplotlib inline替换成%matplotlib widget,运行单元格后图表就会内嵌在Lab里; - 如果第一次用提示模块缺失,先安装依赖包:
安装完成后重启Jupyter Lab就能生效。pip install ipympl # 或者用conda安装 conda install ipympl -c conda-forge
方案2:手动配置matplotlib后端
如果不想用交互式的,只想得到静态内嵌图表,可以直接在代码开头添加配置:
import matplotlib # 指定适配Jupyter Lab的inline后端 matplotlib.use('module://ipympl.backend_nbagg') import matplotlib.pyplot as plt
之后调用plt.show()就能在单元格里显示静态图表了,不需要依赖魔法命令。
方案3:修复原%matplotlib inline的运行问题
如果死磕想用原来的inline命令,那大概率是Jupyter Lab缺少对应的扩展支持:
- 先安装必要的扩展包:
jupyter labextension install @jupyter-widgets/jupyterlab-manager ipympl - 重启Jupyter Lab,再运行
%matplotlib inline,应该就能正常显示图表了(前提是你的Lab没有全局禁用JavaScript)。
内容的提问来源于stack exchange,提问作者465b
相关产品推荐
相关产品推荐

