图形在jupyter笔记本到pdf



我有一个运行python的jupyter笔记本,我希望我构建的所有图形输出到一个pdf文件。有人知道怎么做吗?

亲切的问候,

我找不到一些方法来直接转换pdf中的所有情节,但这种方式我要告诉是完美的工作和测试。首先,您需要导入matplotlib。

import matplotlib.pyplot as plt

现在在绘制图形的jupyter notebook的所有块中编写此代码。图片名称应该为所有块不同,你可以保存为plt1.pngplt2.png等。

plt.save('imagename.png')

请注意,所有块的imagename必须不同。

别担心,你不会留下情节图像。现在在笔记本的最后部分运行这段代码。

from PIL import Image
import glob
import os
images = glob.glob("*.png")
print(images)
imlist = []
for img in images:
im = Image.open(img)
im = im.convert('RGB')
imlist.append(im)
imlist[0].save('plots.pdf',save_all=True, append_images=imlist[1:])
map(os.remove(img),[img for img in images])

基本上在这里,你是保存图像的所有绘图一个接一个然后这段代码将所有这些图像转换为pdf,和os.remove将删除所有拍摄的图像。注意:你不应该在同一文件夹中有其他png文件,否则这些文件也会包含在pdf中并被删除。

如果你是在windows上,你可以使用excel和openpyxl来完成此操作,然后将excel(手动或通过python作为后台进程)打印为PDF。

如果您使用的是matplotlib,则在使用plt.save()创建图像时保存它们。

在excel工作簿中插入图像:

from openpyxl.drawing.image import Image as XLIMG
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
img = XLIMG('example_image.jpg')
# Note that A1 is the cell, you can specify exactly where you want the images.
ws.add_image(img, 'A1')
wb.save('workbook_test')

我经常做的是制作一种带有标题和信息的excel模板,然后在这个模板中加载我的数据或图像,然后使用python打印成PDF并上传到服务器。很酷的是,如果你需要更改报表,通常不需要编写任何代码,只需编辑excel模板即可。

在后台将excel工作簿打印为PDF:在python中将excel文件中选定的工作表打印为PDF

最新更新