138 votes

Plt.show montre le graphe complet mais savefig recadre l'image

Mon code est avec succès l'enregistrement des images dans un fichier, mais il est de culture des détails importants sur le côté droit. Des réponses existent pour résoudre ce problème lorsqu'il se présente pour plt.show, mais c'est l' savefig commande est incorrecte produire le graphique dans cet exemple. Comment cela peut-il être fixé?

L'échantillon de mon code:

import glob
import os
for file in glob.glob("*.oax"):
    try:
        spc_file = open(file, 'r').read()
        newName = file[6:8] + '-' + file[4:6] + '-' + file[0:4] + ' ' + file[8:12] +  ' UTC (Observed) - No Sea Breeze Day'
        plt.title(newName, fontsize=12, loc='left')
        plt.savefig('X:/' + newName + '.png')        
        plt.show()
    except Exception:
        pass

Et les images (en haut plt.show et inférieure fichier est produit à partir d' savefig:

Image when shown with plt.show Image when saved to file


260voto

Serenity Points 16825

Vous pouvez essayer

 plt.savefig('X:/' + newName + '.png', bbox_inches='tight')
 

Ou vous pouvez définir la taille de la figure comme

 fig = plt.figure(figsize=(9, 11))
...
plt.savefig(filename, bbox_inches = 'tight')
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X