pyplot: étendre la marge au bas d'une figure
La capture d'écran suivante montre mon xaxis. J'ai ajouté quelques étiquettes et pivoté de 90 degrés afin de mieux les lire. Cependant, typlot tronque le fond de sorte que je ne suis pas en mesure de lire complètement les étiquettes. Comment étendre la marge inférieure pour voir les étiquettes complètes?
3 réponses
Deux rétroactif façons:
fig, ax = plt.subplots()
# ...
fig.tight_layout()
Ou
fig.subplots_adjust(bottom=0.2) # or whatever
Voici un http://matplotlib.org/examples/pylab_examples/subplots_adjust.html
(mais je préfère tight_layout
)
une solution rapide à une ligne qui a fonctionné pour moi est d'utiliser l'auto de pyplot tight_layout méthode directement, disponible en Matplotlib v1.À partir de 1:
plt.tight_layout()
ceci peut être invoqué immédiatement avant vous montrer le tracé (plt.show()
), mais après vos manipulations sur les axes (par ex. rotations de la ticklabel, etc.).
cette méthode de commodité évite de manipuler des figures individuelles de sous-lots.
où plt est le standard pyplot de:
import matplotlib.pyplot as plt
Subplot-adjusted n'a pas fonctionné pour moi, puisque la figure entière serait simplement redimensionner avec les étiquettes encore hors limite.
une solution que j'ai trouvée était de garder l'axe des y toujours une certaine marge au-dessus des valeurs y les plus élevées ou minimales:
x1,x2,y1,y2 = plt.axis()
plt.axis((x1,x2,y1 - 100 ,y2 + 100))