Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • PYTHON - Atelier MatPlotLib PYTHON - Atelier MatPlotLib
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Terraform modules
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar

La forge institutionnelle d'INRAE étant en production depuis le 10 juin 2025, nous vous recommandons d'y créer tous vos nouveaux projets.

  • Poulard Christine
  • PYTHON - Atelier MatPlotLibPYTHON - Atelier MatPlotLib
  • Wiki
  • AtelierC

AtelierC · Changes

Page history
Update AtelierC authored Sep 16, 2021 by Poulard Christine's avatar Poulard Christine
Hide whitespace changes
Inline Side-by-side
AtelierC.md
View page @ 03b26973
......@@ -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 :
......
Clone repository
  • AtelierB1_Graphiques_simples
  • AtelierB2_Lire_un_fichier
  • AtelierC
  • Atelier_D_carte
  • Atelier_D_carte_a_partir_de_fichiers_binaires
  • Atelier_E_longues_series
  • Atelier_G_widgets
  • Atelier_clic_afficher
  • Atelier_clics
  • Cartes focus sur le redimensionnement
  • GUI avec QT
  • La doc avec Sphinx
  • Lexique
  • Point Théorie Subplots
  • Pour les contributeurs
View All Pages