You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Matplotlib中‘Current Figure’指什么?多图形时如何判定当前图形?

Matplotlib中的「当前图形(Current Figure)」是什么?

1. 什么是Current Figure

Matplotlib里的「当前图形(Current Figure)」就是Pyplot状态机当前默认操作的Figure对象。所有通过pyplot模块(比如plt.plot()、plt.title())执行的绘图操作,都会默认作用在这个当前图形上,它相当于Pyplot状态机的“操作焦点”。

matplotlib.pyplot.gcf()函数的作用就是直接获取这个当前图形对象,拿到后你可以对它做各种自定义操作,比如修改尺寸、保存图片、调整布局等。

2. 多图形场景下如何确定当前图形

当创建多个图形时,Matplotlib会维护一个图形栈,当前图形始终是栈顶的那个对象。以下几种情况会改变当前图形:

  • 调用plt.figure(num):如果指定编号的图形已存在,会将它移到栈顶设为当前;如果不存在,就创建新图形并设为当前。
  • GUI交互中点击图形窗口:对应的图形会被自动设为当前图形。
  • 调用plt.scf(fig):手动将指定的fig对象设置为当前图形。
  • 创建子图/坐标轴时:如果当前没有图形,会自动创建新图形并设为当前;如果已有图形,会在当前图形内操作,保持该图形的当前状态。

举个简单示例:

import matplotlib.pyplot as plt

# 创建第一个图形,此时它是当前图形
fig1 = plt.figure()
plt.plot([1,2,3])

# 创建第二个图形,它成为新的当前图形
fig2 = plt.figure()
plt.plot([3,2,1])

# 手动将fig1设为当前图形
plt.scf(fig1)
plt.title("当前图形的标题")  # 这个标题会应用在fig1上

# 获取当前图形,此时返回的是fig1
current_fig = plt.gcf()

内容的提问来源于stack exchange,提问作者Akshay Sapra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 14:30:24