Jupyter Lab中Matplotlib代码无法显示绘图的问题求助
解决Jupyter Lab中Matplotlib绘图不显示(输出FigureCanvasNbAgg())的问题
我之前也碰到过一模一样的问题!Jupyter Lab和传统Jupyter Notebook在绘图渲染机制上有差异,你看到的FigureCanvasNbAgg()输出就是因为没有配置Lab兼容的绘图后端和必要扩展。
下面是亲测有效的解决步骤:
1. 安装并配置必要的依赖包
Jupyter Lab需要ipympl这个包来支持交互式内联绘图,先通过包管理器安装:
- 使用pip:
pip install ipympl - 使用conda(推荐,避免依赖冲突):
conda install ipympl -c conda-forge
2. 切换Matplotlib的绘图后端
在你的代码最开头添加魔法命令,替换传统的%matplotlib inline:
%matplotlib widget
这个命令会启用Lab支持的交互式绘图后端,而不是Notebook的静态内联后端。
3. 修改后的完整代码示例
%matplotlib widget import matplotlib.pyplot as plt fig = plt.figure(figsize=(10,6),facecolor="white",dpi=100) ax = fig.add_subplot(111) ax.plot([1,2,3],[4,5,6]) plt.show()
额外注意事项
- 安装完
ipympl后必须重启Jupyter Lab,否则扩展不会生效; - 如果还是有问题,可以尝试运行
jupyter lab build(针对旧版本Lab,新版本一般不需要); - 这个问题在刚从Jupyter Notebook转用Lab的用户中非常普遍,核心就是后端配置的差异。
内容的提问来源于stack exchange,提问作者zleung
相关产品推荐
相关产品推荐

