当前位置: 首页 > 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.jsqmd.com/news/50381/

相关文章:

  • 2025年钢筋砼盖板制造企业权威推荐榜单:防盗盖板/槽钢包边盖板/角铁包边盖板源头厂家精选
  • 2025 年 11 月热回收设备厂家权威推荐榜:热回收转轮/热管热回收/三维热管热回收/U型热管热回收/分解式乙二醇热回收/烟气余热回收,高效节能换热技术全景解析
  • Pyplot vs Seaborn 功能实现对比(直方图+箱线图) Pyplot → Seaborn 快速迁移指南
  • 2025年型材铝扣板批发厂家权威推荐榜单:吊顶铝扣板/集成铝扣板/墙面铝扣板源头厂家精选
  • 2025年11月上海会计师事务所推荐榜单:权威机构综合测评与选择指南
  • 2025年11月上海会计师事务所推荐榜单:知名机构综合评测与选择指南
  • 2025年家具封边条源头厂家权威推荐榜单:板材封边条/门窗封边条/柜门封边条源头厂家精选
  • 2025年11月上海会计师事务所推荐榜单:五家主流机构综合对比与选择指南
  • 光催化全解水反应器源头厂家TOP5,品牌综合实力榜单发布
  • GitHub Star 排名靠前的 AI 开源项目推荐(Java 版)
  • client_loop send disconnect broken pipe 报错解决方案
  • 2025年最新评价高的板材货架源头厂家找哪家,工业重型货架/手摇式板材货架/线棒流利货架/移动流利货架/重型滚轮式流利货架厂商推荐排行
  • AI元人文:构建价值共生的协契未来
  • 有时休息时,身体会动一下
  • 2025年11月上海审计事务所推荐榜单:主流机构对比与选择指南
  • 2025年11月上海审计事务所口碑推荐:用户评价与市场报告深度解析
  • 2025年上海品牌营销推荐公司榜单途阔营销
  • 2025年11月北京会计师事务所推荐榜单:权威对比与高性价比选择指南
  • 第四十七篇
  • 2025年11月北京会计师事务所推荐榜单及选择指南
  • 吴恩达深度学习课程三: 结构化机器学习项目 第一周:机器学习策略(一)正交化调优和评估指标
  • Mac与Kali主机间SSH连接故障排除:主机密钥变更的解决便捷的方案
  • 2025年11月高新技术企业认定公司推荐榜单与选择指南:权威解析与综合对比
  • 为什么软件反应特别慢?一次因版本架构错误导致的性能问题排查记录
  • Enefit - Kaggle项目
  • 2025年11月审计报告事务所推荐:知名机构选择指南及避坑要点详解
  • 2025年11月高新技术企业认定公司推荐:榜单与权威选择指南
  • Axis(/ˈksɪs/) Axes(/ˈksiːz/)两者的区别?
  • Vue 2 和 Vue 3 的简要对比
  • kube-proxy iptables 模式的原理