2016-04-16 1 views
0

Compte tenu du tableau suivant produit avec matplotlib 1.1.1:Différence entre XLIM/ylim et les limites de l'Axe

enter image description here

ax.get_ylim = (30, 90). Quand je lance le code suivant:

ax.plot_date(dates_to_plot, y_obs2) 
foo = ax.get_ylim() 
ax.fill_between(dates_to_plot, foo[0], y_obs2) 

le remplissage est compris entre y_obs2 (la ligne de gel bleu) et 30 - ce qui est prévu. Ce que je veux est de remplir entre y_obs2 et 20 (ou quelle que soit la limite inférieure est pour le graphique à ce moment-là.)

Si je remplace foo[0] avec tout simplement 0, la zone située sous la ligne horizontale est complètement remplie, mais c'est n'est pas optimal car la limite inférieure du graphique est modifiée à 0. De plus, y_obs1 (la température) peut devenir négatif (malheureusement!). J'ai été incapable de trouver une méthode pour remplir la zone entre la ligne y_obs2 et la limite inférieure du graphique - quelle qu'elle soit.

Y at-il une méthode que je ne vois pas qui peut fournir un tuple de en dehors les limites du tableau?

Répondre

0

Vous souhaitez définir les limites auto=False pour vous assurer qu'elles ne sont pas recalculées lorsque vous modifiez les données tracées.

+0

Merci pour votre inscription. Ce n'est pas quelque chose que j'aurais considéré - en mettant quelque chose d'égal à lui-même - mais ça marche. Très appréciée. – DaveL17

+0

@ DaveL17 C'est un moyen. Je viens de le mettre à jour d'une manière plus logique – Suever

+0

Cela clarifie les choses. Cela donne effectivement la liberté de régler ylim ce que je veux. À votre santé. – DaveL17