matplotlib PdfPages: можем ли мы сжать или растеризовать изображение?

Похоже, что стандартное поведение savefig в PdfPages сохранит векторизованное изображение (каждая точка данных является объектом), что приводит к большому размеру файла и медленной загрузке / рендерингу. Можем ли мы сохранить растровое изображение (например, PNG), чтобы оно рендерилось быстро?

Это то, что я делаю сейчас, что приводит к векторным изображениям:

plt.ioff()
with PdfPages(foutname) as pdf:
  for row in df.itertuples():
    data = ReadFile(df.fname)
    plt.clf()
    plt.plot(data['time'], data['voltage'], 'bo')
    pdf.savefig()
    plt.close()

Благодарю.

1 ответ

Я думаю, достаточно установить rasterized=True:

plt.plot(data['time'], data['voltage'], 'bo', rasterized=True)
Другие вопросы по тегам