... | ... | @@ -61,7 +61,8 @@ L'outil zoom montre que l'affichage des étiquettes de date est correct quel que |
|
|
Vous pouvez partir de la fonction précédente ou de **donnees_TD_ETP_2subplots** déjà écrit; dans le développement on trouve souvent en ligne des bouts de code qu'il faut s'approprier et adapter. Cette fonction reprend le début de la fonction précédente (lecture avec pd.read_csv), on trace aussi avec la méthode pd plot pour vérifier que la lecture s'est bien passée (phase que l'on peut ensuite mettre en commentaire). Ensuite on a du code spécifique. Si vous l'exécutez, vous verrez que ça marche, le rendu n'est pas forcément à votre goût, donc ce sera l'occasion de vous exercer à mettre en forme. On proposera par la suite une variante, vous pourrez donc étoffer votre palette.
|
|
|
|
|
|
<img src="uploads/1fd2a2524cc6ebf27504f8cab0d326b8/Figure_3_graphique_PTQ_subplots.png" width="240">
|
|
|
<i> figure structurée en 2 vignettes, sur le graphique du haut chaque variable a son axe ; début de mise en forme </i>
|
|
|
|
|
|
<i> figure structurée en 2 vignettes partageant le même axe des x, sur le graphique du haut chaque variable a son axe ; début de mise en forme </i>
|
|
|
|
|
|
De prime abord, certaines syntaxes peuvent paraître vraiment bizarres. Pour comprendre, on n'échappera pas à un peu de théorie ; certains sites expliquent très bien la structure des figures, et cela aide vraiment à progresser et à s'approprier les notions.
|
|
|
|
... | ... | @@ -74,7 +75,8 @@ Voir les diapos. |
|
|
# on va nommer la figure fig et les subplots ax_pluie et ax_q
|
|
|
fig, (ax_pluie, ax_q) = plt.subplots(ncols=1, nrows=2, sharex=True)
|
|
|
fig.subplots_adjust(bottom=0.15) # marge en bas
|
|
|
fig.suptitle("Forçages en haut, réponse du bassin en bas") #titre de la figure
|
|
|
#titre de la figure
|
|
|
fig.suptitle("Forçages en haut, réponse du bassin en bas")
|
|
|
|
|
|
# première variable : LA PLUIE, bien sûr dans le système ax_pluie
|
|
|
etiquette_pluie = nom_colonnes[1]
|
... | ... | @@ -103,7 +105,7 @@ ax_q.plot(liste_dates, DF_TD4[etiquette_debit].tolist(), marker='>', color='blue |
|
|
|
|
|
Les messages essentiels sont :
|
|
|
|
|
|
* même si le mot-clé "plt" permet en général de déclencher les bonnes instructions (façon de faire inspirée de matlab) , il est plus rigoureux d'utiliser la syntaxe orientée objet. Il est possible de nommer les objets (fig, ax, et même les courbes si besoin) ce qui facilite les actions, et donne davantage de contrôle (fig.legend() n'est pas tout à fait la même chose que ax.legend()). Attention, les méthodes de la la classe Axes sont parfois différentes : on va écrire par exemple: plt.xlabel() → ax.set_xlabel() ; plt.ylabel() → ax.set_ylabel() plt.xlim() → ax.set_xlim() ; plt.ylim() → ax.set_ylim() plt.title() → ax.set_title() ["matplotlib gotchas" dans le livre de JVanderPlas](https://www.oreilly.com/library/view/python-data-science/9781491912126/ch04.html)
|
|
|
* même si le mot-clé "plt" permet en général de déclencher les bonnes instructions (façon de faire inspirée de matlab) , il est plus rigoureux d'utiliser la syntaxe orientée objet. Il est possible de nommer les objets (fig, ax, et même les courbes si besoin) ce qui facilite les actions, et donne davantage de contrôle (fig.legend() n'est pas la même chose que ax.legend()). Attention, les méthodes de la la classe Axes sont parfois différentes : on va écrire par exemple: plt.xlabel() → ax.set_xlabel() ; plt.ylabel() → ax.set_ylabel() plt.xlim() → ax.set_xlim() ; plt.ylim() → ax.set_ylim() plt.title() → ax.set_title() ["matplotlib gotchas" dans le livre de JVanderPlas](https://www.oreilly.com/library/view/python-data-science/9781491912126/ch04.html)
|
|
|
|
|
|
On met donc en pratique sur ce graphique deux notions importantes :
|
|
|
|
... | ... | |