Matplotlib:使用栅格化图形多页PDF

时间:2014-03-31 20:37:48

标签: python pdf matplotlib

我使用以下代码生成多页pdf。 因为我将有大约3000个地块,每页10个。 pdf可能会变得有用。 我用jpg或pdf版本替换每个情节。但我不知道如何在PdfPage后端中执行此操作。

plots_per_page = 10
col_per_page = 1

with PdfPages('NewPDF.pdf') as pdf:
    for pgg in range(0,pages):

        fig = figure(figsize=(8,20) )
        gs1 = gridspec.GridSpec(plots_per_page//col_per_page, col_per_page)

        for i in arange(0,10):
            ax = fig.add_subplot(gs1[i])
            ax.bar(arange(20), random.normal(0,1,20), linewidth = 0.5)

        gs1.tight_layout(fig , h_pad=0.8, w_pad=0.8)
        axis('auto')

        savefig(pdf, format='pdf')
        close()

1 个答案:

答案 0 :(得分:0)

我对这个问题有类似的问题,我认为:Rasterizing multiple elements in matplotlib

one of the answers there一样,请使用:

ax = fig.add_subplot(111, rasterized=True)

或做:

ax.set_rasterized(True)

如果你想再推文件大小,你可以设置图的分辨率:

savefig(pdf, format='pdf', dpi=300)