我正在使用Jupyter Notebook进行数据分析,其中我需要在单独的单元格中一个接一个地绘制几个数字
例如,假设我有15个数字,如下所示:
fig1 = plt.figure(...)
plt.barh(...)
fig2 = plt.figure(...)
plt.subplot(1,2,1)
plt.barh(...)
plt.subplot(1,2,2)
plt.barh(...)
fig15 = plt.figure(...)
plt.barh(...)
如何获得这些人物名称的列表?像这样:
[fig1, fig2, ...., fig15]
p.S:我已经尝试过fig_nums = plt.get_fignums()
,它返回一个空列表:(
plt.get_fignums()
不返回任何结果,因为您不是在创建图形,至少不是直接创建图形。plt.barh()
返回一个容器。如果你想跟踪你的数字,请使用
fig1 = plt.figure()
ax1 = plt.barh(...)
...
然后plt.get_fignums()
返回用plt.figure()
创建的数字列表。
如果这不是您想要的,最简单的方法是将所有fig#
存储在list
中
figures = []
fig1 = plt.barh(...)
figures.append(fig1)
...
``
我也发现了这个变通方法,它似乎对jupyter有所帮助:
fig_list = [f for f in globals() if 'Figure' in str(type(globals()[f]))]
print(fig_list)