解决Jupyter Notebook中Matplotlib图像不显示问题

何川
何川
发布时间:2026-10-13 | 5人浏览过
原创

本文介绍在Jupyter Notebook中使用Matplotlib时图像无法显示的常见原因及解决方法。通过添加%matplotlib inline魔法命令可正常显示静态图像;若需显示动画,则需使用%matplotlib notebook。文章提供了具体的代码示例和配置说明,帮助开发者快速排查并解决绘图显示异常问题。

静态图像显示解决方案

若要在Jupyter Notebook中正常显示Matplotlib生成的图像,需在代码执行区域的第一行添加特定的魔法命令。

%matplotlib inline

添加该命令后,保存并运行代码,静态图像即可正常渲染显示。

动画显示问题与处理

补充知识:Jupyter环境中Matplotlib动画显示问题

在参考莫烦老师的Matplotlib教程时,部分用户发现运行包含sinx函数动画的代码时,Jupyter Notebook无法正确展示动画效果。

针对动画显示问题,建议在代码前添加%matplotlib notebook命令以启用交互模式。

以下是实现sinx函数动画的具体代码示例:


%matplotlib notebook
import tensorflow as tf 
import numpy as np 
import matplotlib.pyplot as plt
from matplotlib import animation
fig, ax = plt.subplots()
x =np.arange(0,2*np.pi,0.01)
# 返回的是个列表
line , = ax.plot(x,np.sin(x))
def animate(i):
  # xdata 保持不变, ydata 更新成另外一批数据
  # 将0-100都传进去更新一下,i变化时,y也会变化,更新图像
  line.set_ydata(np.sin(x+i/10))
  return line,

def init():
  line.set_ydata(np.sin(x))
  return line,

# interval 是更新的频率,隔多少毫秒更新一次,这里是隔20ms更新一次
# blit=True,只更新有变化的点
ani = animation.FuncAnimation(fig=fig,func=animate,frames =100,init_func=init,interval =20,blit=False)
plt.show()

以上即为解决Matplotlib在Jupyter Notebook中图像不显示问题的完整方案,供读者参考。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表