如何在python中将matplotlib图表保存到临时文件中



我需要将Matplot图保存到我控制的临时文件中,因为此代码将在python Flask REST服务中。

我试过这个:

fp=临时文件。NamedTemporaryFile((return_base64=">

with fp:
fp.write(plt.savefig) # THIS IS WRONG....
with open(fp.name, 'rb') as open_it:
open_it.seek(0)
return_base64 = str(base64.b64encode(open_it.read()))
# strip off leading b and ' and trailing '
return_base64 = return_base64[2: len(return_base64) - 1]
open_it.close()
fp.close()

但是,";fp.write";无法像我上面所做的那样保存plt.savefig。

我的问题是我正在使用PRAT语音库,并且似乎没有使用";Sound(("方法。因此,我做了很多临时文件来解决这个问题。

那么,如何将matplotib绘图写入命名的临时文件?

提前表示感谢。

我正在分享这段代码,它将jpg文件存储在我的临时文件夹中

import io 
buf = io.BytesIO()
plt.savefig(buf, format="jpg")
#print(buf.getvalue()) return bytes of plot 
fp = tempfile.NamedTemporaryFile() 
# print(fp.name) return file name 
with open(f"{fp.name}.jpg",'wb') as ff:
ff.write(buf.getvalue()) 
buf.close()

最新更新