gpt4 book ai didi

python - 如何从 matplotlib.figure.Figure 列表中保存 matplotlib 图?

转载 作者:行者123 更新时间:2023-12-01 01:56:22 27 4
gpt4 key购买 nike

创建matplotlib图形后是否可以保存它?例如:

import matplotlib.pyplot as plt
import numpy
normal = numpy.random.normal(0, 1, 100)
df = pandas.DataFrame(normal.reshape((10, 10)))

figs = []

for i in df.keys():
fig = plt.figure()
plt.plot(df.index, df[i])
figs.append(fig)

print(figs)

生成列表中的数字:

[<matplotlib.figure.Figure object at 0x7f8f158f1b00>, <matplotlib.figure.Figure object at 0x7f8f100d6128>, <matplotlib.figure.Figure object at 0x7f8f10081da0>, <matplotlib.figure.Figure object at 0x7f8f0a0354a8>, <matplotlib.figure.Figure object at 0x7f8f09fbd470>, <matplotlib.figure.Figure object at 0x7f8f09f18b00>, <matplotlib.figure.Figure object at 0x7f8f09f12d68>, <matplotlib.figure.Figure object at 0x7f8f09e88860>, <matplotlib.figure.Figure object at 0x7f8f09ebbc18>, <matplotlib.figure.Figure object at 0x7f8f09d6e198>]

我不想在创建后直接显式保存绘图,但可以选择稍后执行此操作(可能是在另一个类中)。理想的情况是将 fig 传递给 plt.savefig,但似乎没有可用于此类使用的插槽。

澄清一下。我想做的是:

fname = r'/path/to/file.jpg'
plt.savefig(fname, fig=figs[2])

这可以通过其他方式实现吗?

最佳答案

只需使用fig.savefig()。以下是您的案例的代码片段:

for idx, fig in enumerate(figs):
fname = '{}_tmp.jpg'.format(idx)
fig.savefig(fname)

关于python - 如何从 matplotlib.figure.Figure 列表中保存 matplotlib 图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50138291/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com