2016-01-04 1 views
0

Je voudrais sauvegarder à une résolution différente toutes les parcelles générées dans un cahier ipython. Je sais que je pourrais ajouter cette ligne à chaque cellule qui montre une parcelleEnregistrer automatiquement les parcelles dans un cahier ipython

plt.savefig('figure_1.pdf', dpi=300) 

mais cela nécessiterait d'ajouter manuellement en cas de besoin.

Existe-t-il un moyen (raisonnablement) simple de dire à ipython de sauvegarder chaque parcelle? Peut-être en utilisant un modèle de nom de fichier comme figure_X.pdf, où X est le numéro de la cellule?

Merci

Répondre

1

Oui, il suffit de créer dynamiquement une variable qui est le nom de votre sortie désirée.

outPDF = 'figure_{}.pdf'.format(cellNumber) 
plt.savefig(outPDF, dpi=300) 

Ainsi, par exemple, si cellNumber = 5, outPDF = 'figure_5.pdf'

+0

Cool, merci! Y a-t-il un moyen de l'automatiser? Alors que la fonction savefig est appelée automagiquement dans chaque cellule avec une intrigue? – mgalardini

+0

Pas tout à fait sûr que je comprends ce que vous demandez; cela devrait juste aller dans n'importe quel autre code python que vous avez qui génère/affiche les parcelles? – Erica

+1

Oui, je voudrais trouver un moyen de ne pas avoir à écrire ces deux lignes dans chaque cellule qui affiche un tracé. Quelque chose comme une fonction magique pourrait faire ... – mgalardini