Neste caso precisamos de uma solução um pouco mais sofisticada.
Pensei em algo assim:
import tkinter as tk
import matplotlib.pyplot as plt
from matplotlib.backends.backend_pdf import PdfPages
def exportar_para_pdf():
pdf_file = "conteudo_exportado.pdf"
# Criar um novo PDF
with PdfPages(pdf_file) as pdf:
# Renderizar e salvar o gráfico
fig, ax = plt.subplots()
ax.plot([1, 2, 3, 4], [1, 4, 2, 3])
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_title('Gráfico de Exemplo')
pdf.savefig() # Salvar o gráfico no PDF
# Fechar o gráfico após salvar
plt.close()
print("PDF exportado com sucesso.")
# Criar a janela Tkinter
root = tk.Tk()
root.title("Exportar para PDF")
# Criar um botão para acionar a exportação para PDF
botao_exportar = tk.Button(root, text="Exportar Gráfico para PDF", command=exportar_para_pdf)
botao_exportar.pack()
root.mainloop()
Lembre-se de instalar as bibliotecas, alterações serão necessárias para se enquadrar no seu caso de uso.
Se nada assim funcionar, uma 'gambiarra' seria subir um site com os gráficos organizados no tamanho de uma folha A4 e chamar uma função de screenshot, ai jogar esse screenshot no PDF, mas desta forma precisariamos usar django ou algo assim, seria uma gambiarra mas talvez funcione!