Em python (para uma figura criada em uma GUI), consegui salvar a figura em .jpg e também em .pdf usando:
plt.savefig(filename1 + ".pdf")
ou
plt.savefig(filename1 + ".jpg")
Usando um arquivo, gostaria de salvar várias figuras em .pdf ou .jpg (assim como é feito no laboratório de matemática). Alguém por favor pode ajudar com isso?
Respostas:
29 para resposta № 1Usar PdfPages
para resolver seu problema. Passe seu figure
objeto para o savefig
método.
Por exemplo, se você tem uma pilha inteira de figure
objetos abertos e você deseja salvá-los em um PDF de várias páginas, você pode fazer:
import matplotlib.backends.backend_pdf
pdf = matplotlib.backends.backend_pdf.PdfPages("output.pdf")
for fig in xrange(1, figure().number): ## will open an empty extra figure :(
pdf.savefig( fig )
pdf.close()
17 for answer № 2
Você quer dizer salvar vários números para dentro um arquivo ou salvar vários números usando um script?
Veja como você pode salvar duas figuras diferentes usando uma roteiro.
>>> from matplotlib import pyplot as plt
>>> fig1 = plt.figure()
>>> plt.plot(range(10))
[<matplotlib.lines.Line2D object at 0x10261bd90>]
>>> fig2 = plt.figure()
>>> plt.plot(range(10,20))
[<matplotlib.lines.Line2D object at 0x10263b890>]
>>> fig1.savefig("fig1.png")
>>> fig2.savefig("fig2.png")
... que produz esses dois gráficos em seus próprios arquivos ".png":
Para salvá-los para o mesmo Arquivo, usar subtramas:
>>> from matplotlib import pyplot as plt
>>> fig = plt.figure()
>>> axis1 = fig.add_subplot(211)
>>> axis1.plot(range(10))
>>> axis2 = fig.add_subplot(212)
>>> axis2.plot(range(10,20))
>>> fig.savefig("multipleplots.png")
O script acima produz este único arquivo ".png":