如果我首先使用以下代码行将绘图保存为 .png 文件,我可以将 matpltlib 生成的绘图添加到 word 文件(使用 python-docx)
plt.savefig(path_to_file)
doc.add_picture(path_to_file, width=Inches(3))
有没有一种方法可以直接将绘图添加到Word文档中,而无需先另存为图像。使用
doc.add_picture(plt, width=Inches(3))
产生模块“matplotlib.pyplot”没有属性“seek”错误
python-docx 函数
add_picture
将路径或流作为第一个参数,并且 matplotlib 可以返回图形作为缓冲区,因此大概以下应该可以工作:
import matplotlib.pyplot as plt
from io import BytesIO
fig, ax = plt.subplots()
...
# render the figure
fig.canvas.draw()
# save to buffer
buffer = BytesIO()
fig.savefig(buffer, format="png")
# hand buffer to python-docx
doc.add_picture(buffer)