当前位置: 首页 > news >正文

plt.show()什么时候不用写?什么时候必须写?

在 Jupyter Notebook / IPython 环境中,默认开启 “自动显示模式”%matplotlib inline%matplotlib notebook),绘图后会自动渲染图像,无需手动调用 plt.show()。以下是具体分析:


1. 无需写 plt.show() 的场景

(1)Jupyter Notebook / JupyterLab

import matplotlib.pyplot as plt
import numpy as npx = np.linspace(0, 10, 100)
plt.plot(x, np.sin(x))  # 直接显示图像,无需 plt.show()
  • 原因:Jupyter 会自动捕获 Matplotlib 的绘图输出并嵌入到单元格中。

(2)IPython 终端

In [1]: %matplotlib
Using matplotlib backend: TkAggIn [2]: plt.plot([1,2,3])  # 图像窗口自动弹出
  • 原因%matplotlib 魔法命令会启用交互式后端。

(3)使用 matplotlib.pyplot 保存图像时

plt.plot([1,2,3])
plt.savefig("figure.png")  # 保存图像时,无需 plt.show()
  • 原因savefig() 会直接将图像写入文件,不依赖显示窗口。

(4)某些 IDE 的实时预览功能

  • PyCharm:在脚本中绘图时,会自动弹出预览窗口。
  • VS Code:安装 Matplotlib 扩展后,可实时渲染图像。

2. 必须写 plt.show() 的场景

(1)标准 Python 脚本(.py 文件)

# test.py
import matplotlib.pyplot as pltplt.plot([1,2,3])
plt.show()  # 必须调用才能显示图像
  • 原因:脚本文件没有交互式环境,需要手动触发显示。

(2)使用非交互式后端时

import matplotlib
matplotlib.use('Agg')  # 非交互式后端(无窗口)
import matplotlib.pyplot as pltplt.plot([1,2,3])
plt.savefig("figure.png")  # 仅保存,不显示
# plt.show()  # 此时调用也不会有窗口弹出

(3)多图绘制时,需要手动控制显示时机

plt.figure(1)
plt.plot([1,2,3])plt.figure(2)
plt.plot([4,5,6])plt.show()  # 同时显示两个图像窗口

3. 总结

环境/场景 是否需要 plt.show()
Jupyter Notebook / Lab 否(自动显示)
IPython 终端(%matplotlib) 否(自动弹出)
标准 Python 脚本(.py) 是(必须调用)
仅保存图像(savefig) 否(无需显示)
非交互式后端(如 Agg) 否(无窗口)

http://www.rkmt.cn/news/60246.html

相关文章:

  • Pyplot vs Seaborn 功能实现对比(直方图+箱线图) Pyplot → Seaborn 快速迁移指南
  • 2025年最新评价高的板材货架源头厂家找哪家,工业重型货架/手摇式板材货架/线棒流利货架/移动流利货架/重型滚轮式流利货架厂商推荐排行
  • AI元人文:构建价值共生的协契未来
  • 2025年11月上海审计事务所推荐榜单:主流机构对比与选择指南
  • 2025年11月上海审计事务所口碑推荐:用户评价与市场报告深度解析
  • 2025年11月高新技术企业认定公司推荐榜单与选择指南:权威解析与综合对比
  • Axis(/ˈksɪs/) Axes(/ˈksiːz/)两者的区别?
  • Vue 2 和 Vue 3 的简要对比
  • kube-proxy iptables 模式的原理
  • 2025年11月智能语音机器人品牌推荐对比分析:三大阵营专业维度深度评测报告
  • Numpy和Pandas都有哪些容器类型?Int64和DataFrame都叫数据类型?
  • 2025年比较好的食品塑料袋厂家最新热销排行
  • 2025年质量好的旋风骑士游乐设施厂家最新实力排行
  • 2025年靠谱的三节缓冲同步隐藏轨厂家最新TOP实力排行
  • 2025年比较好的304潜水搅拌机直销制造
  • 2025年质量好的锂电池负极材料多孔碳分子筛实力源头
  • 2025年知名的复合非隔热型防火玻璃品牌厂家排行榜
  • 2025年热门的家具液压铰链厂家最新权威实力榜
  • 2025年质量好的生长灯最新TOP品牌厂家排行
  • 2025年质量好的反弹缓冲隐藏轨用户好评厂家排行
  • 2025年比较好的圆盘耙片犁片热门厂家推荐榜单
  • 2025年质量好的萤火虫激光灯厂家实力及用户口碑排行榜
  • 2025年知名的面料金钻绒厂家推荐及选择参考
  • 2025年评价高的成套配电柜厂家最新TOP实力排行
  • 2025年热门的高精度氯化氢传感器厂家实力及用户口碑排行榜
  • Pandas 的数据类型都有哪些? `category` 类型是什么?
  • 酷呆桌面(Coodesker)V1.1.0.2 免费版下载与安装教程:Windows 桌面整理神器
  • 详细介绍:(huawei)5.最长回文子串
  • 2025年比较好的百通电缆Fieldbus H1通讯电缆厂家最新TOP实力排行
  • 2025年11月武汉一对一培训机构推荐榜单及选择指南