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
  • Atelier_G_widgets

Atelier_G_widgets · Changes

Page history
Update Atelier_G_widgets authored Dec 01, 2021 by Poulard Christine's avatar Poulard Christine
Hide whitespace changes
Inline Side-by-side
Atelier_G_widgets.md
View page @ 0dd539cb
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
Cette session "G" a été ajoutée pour permettre de manipuler les **widgets de Matplotlib** sur un exemple plus simple que les étapes "E" et "F", en particulier sans avoir à lire un fichier ni utiliser pandas et ses rééchantillonnages (une difficulté à la fois...). Cette session "G" a été ajoutée pour permettre de manipuler les **widgets de Matplotlib** sur un exemple plus simple que les étapes "E" et "F", en particulier sans avoir à lire un fichier ni utiliser pandas et ses rééchantillonnages (une difficulté à la fois...).
Les widgets sont des objets permettant d'interagir avec la figure, il faut pour cela les associer avec des fonctions qui, par exemple, recalculent des valeurs en fonction de nouveaux paramètres et retracent les courbes : Les widgets sont des objets permettant d'interagir avec la figure, il faut pour cela les associer avec des fonctions qui, par exemple, recalculent des valeurs en fonction de nouveaux paramètres et retracent les courbes :
- :arrow_backward: :arrow_forward: "Sliders" - :arrow_backward: :arrow_forward: "Sliders" (un peu relookés dans la version 3.5 :new:)
- :ballot_box_with_check: cases à cocher : Checkbuttons - :ballot_box_with_check: cases à cocher : Checkbuttons
- :radio_button: choix d'une option : Radiobuttons - :radio_button: choix d'une option : Radiobuttons
- :stop_button: boutons : Buttons. - :stop_button: boutons : Buttons.
...@@ -28,7 +28,7 @@ Il existe des bibliothèques tierces avec des améliorations de ces widgets, sig ...@@ -28,7 +28,7 @@ Il existe des bibliothèques tierces avec des améliorations de ces widgets, sig
On signale ici qu'il existe aussi une bibliothèque iPython pour ajouter des widgets à un notebook Jupyter (non testé ici). On signale ici qu'il existe aussi une bibliothèque iPython pour ajouter des widgets à un notebook Jupyter (non testé ici).
:warning: erreur courante : si vous définissez des widgets à l'intérieur d'une fonction, ils vont fonctionner un moment, jusqu'à ce que le "garbage collector" (ramasse-miette en français) considère, une fois la fonction terminée, que ces objets ne sont plus référencés même si la fenêtre matplotlib est toujours ouverte avec les widgets dessus ! Il va donc les supprimer. Ils seront toujours tracés, mais inactifs (non-responsive en anglais, si vous cherchez des compléments sur les forums). Il faut donc veiller à ce que leur nom soit déclaré au-dehors de la fonction, soit en le définissant comme retour de fonction, soit en créant un attribut d'un objet :warning: :recycle: erreur courante : si vous définissez des widgets à l'intérieur d'une fonction, ils vont fonctionner un moment, jusqu'à ce que le "garbage collector" (ramasse-miette en français) considère, une fois la fonction terminée, que ces objets ne sont plus référencés même si la fenêtre matplotlib est toujours ouverte avec les widgets dessus ! Il va donc les supprimer. Ils seront toujours tracés, mais inactifs (non-responsive en anglais, si vous cherchez des compléments sur les forums). Il faut donc veiller à ce que leur nom soit déclaré au-dehors de la fonction, soit en le définissant comme retour de fonction, soit en créant un attribut d'un objet
mon_objet_qui_existe_dans_le_main.slider = mon_slider_dans_la_fonction. mon_objet_qui_existe_dans_le_main.slider = mon_slider_dans_la_fonction.
Le même problème existe pour les images intégrées dans une interface, il faut absolument leur donner un nom pour que l'objet correspondant ne soit pas jeté par le GC. Le même problème existe pour les images intégrées dans une interface, il faut absolument leur donner un nom pour que l'objet correspondant ne soit pas jeté par le GC.
......
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