... | ... | @@ -4,7 +4,8 @@ |
|
|
|
|
|
pour l'instant l'essentiel du contenu porte sur Matplotlib, avec un **"Atelier Matplotlib"** en plusieurs parties, dont un point sur les bases de Python nécessaires. Des pages plus généralistes seront ajoutées au fur et à mesure (modules et gestion des versions, environnement virtuel...) avec des liens vers des sites utiles et des compléments.
|
|
|
|
|
|
![](uploads/f26fc46a5c4bc9f072820291a73d1cbd/Figure_3_graphique_PTQ_subplots_avec-legende.png) _exemple de résolution d'un problème récurrent : un graphique avec courbes et deux axes des y, jumelé avec un autre ; légende commune à toute la figure et légende "customisée" ; figure tracée avec le code__ [_Atelier_MatPlotLib_2021_part1_](https://gitlab.irstea.fr/christine.poulard/atelier-matplotlib/-/blob/master/Atelier_MatPlotLib_2021_part1.py)
|
|
|
<img src="uploads/f26fc46a5c4bc9f072820291a73d1cbd/Figure_3_graphique_PTQ_subplots_avec-legende.png" width="240" >
|
|
|
<i>exemple de résolution d'un problème récurrent : un graphique avec courbes et deux axes des y, jumelé avec un autre ; légende commune à toute la figure et légende "customisée" ; figure tracée avec le code__ [_Atelier_MatPlotLib_2021_part1_](https://gitlab.irstea.fr/christine.poulard/atelier-matplotlib/-/blob/master/Atelier_MatPlotLib_2021_part1.py)</i>
|
|
|
|
|
|
## Dans cette page d'accueil :
|
|
|
|
... | ... | @@ -72,24 +73,24 @@ Enfin, les sites de référence qui expliquent non seulement comment, mais surto |
|
|
La numérotation est critiquable et sera sans doute revue; la logique était d'aller du plus simple au plus compliqué... sauf que cela devient faux dès que l'on rajoute un exemple.
|
|
|
|
|
|
Les exemples suivants sont tirés de nos activités (chroniques de valeurs, champs de valeurs...).
|
|
|
| Atelier | Exemple | Notions centrales & additionnelles | |
|
|
|
|---------|---------|------------------------------------|--|
|
|
|
| B) Atelier 1 : Un premier graphique, avec un axe des x et un axe des y | ![AtelierB1_PremiereFigure](uploads/4814f2260d6243b457d1c05706167d44/AtelierB1_PremiereFigure.png) | _voir repl en ligne_ | |
|
|
|
| [B1) Un premier graphe très simple](/christine.poulard/atelier-matplotlib/-/wikis/AtelierB1_Graphiques_simples) | | | |
|
|
|
| introduction | | | |
|
|
|
| [B2) lire un fichier texte et extraire l'information](/christine.poulard/atelier-matplotlib/-/wikis/Atelier1_2) | ![FigureB2_feuilledestyle](uploads/5315b3712be9191c3d5c28498618cdf3/FigureB2_feuilledestyle.PNG) | lire un fichier et parser ; gestion des dates avec datetime | |
|
|
|
| [C) Atelier 2 : un graphique avec un 2e axe des y ; les objets d'une figure](/christine.poulard/atelier-matplotlib/-/wikis/AtelierC) | ![Figure_3_graphique_PTQ_subplots](uploads/31dcb119ac7b2e3521a9a7b831010756/Figure_3_graphique_PTQ_subplots.png) | Définitions "objet" de Figure et Axes ; créer une 2e courbe avec un 2e axe des y ; partager un même axe des x sur deux vignettes différentes. Différence entre légende d'Axes et de Figure. Customiser une légende (voir illustration en tête de page) | |
|
|
|
| [D) Atelier 3 : pour changer, une carte ('heatmap') à partir d'une matrice, avec sa colormap](/christine.poulard/atelier-matplotlib/-/wikis/Atelier_D_carte) ; avec quelques imports/exports entre mpl et QGis | ![carte](uploads/3495d20090b9fa6f99526442c859cf9b/carte.png) | lecture et tracé des shapes (ici, sans geopandas) ; représentation d'une matrice avec imshow; notion de colormap ; customisation d'une colorbar discrète par une liste de couleurs ou par discrétisation d'une colormap continue | |
|
|
|
| [E) Atelier 4 : on revient au traitement de chroniques, dans le cas de longues séries](Atelier_E_longues_series) : amélioration de l'affichage des étiquettes de date sans pandas ; on pourra travailler avec le fichier de l'atelier 1 et/ou un fichier binaire | | problèmes spécifiques des longues séries (cette section sera étoffée si besoin exprimé) | |
|
|
|
| **NIVEAU AVANCE** | **interactions : événements et WIDGETS** | | |
|
|
|
| [Atelier événement : notion d'événement, de callback ; mise à jour d'un graphique ](Atelier_clics): exemple d'un "clic sur un graphique" qui va donner des infos sur le point le plus proche, via PICKER ; notions de distance "en unités du graphiques" et "en unité écran" | ![selection_point_mouseclick_2courbes](uploads/197d80a53567be4fb1ec3f375240f1ad/selection_point_mouseclick_2courbes.png) | événement, liaison événement fonction | |
|
|
|
| [F) Atelier 5 : widgets et prétraitement de longues chroniques avant visualisation ](Atelier_F_pretraitement): adaptation de la résolution | ![PresentationVisuSerieDynamique](uploads/bfd9cfbd308afc6ff7455467f650ab64/PresentationVisuSerieDynamique.png) | pandas et rééchantillonnage, surcharge des outils de la barre d'outils | |
|
|
|
| [G) Atelier 6 : les widgets de matplotlib : slider et checkbutton](Atelier_G_widgets) : plusieurs exemples de difficulté croissante mais plus simple que le F ; | ![AtelierG_widgetsEtBoutonsToolbar](uploads/9b805cf3cb4d2d384c7f07b7e19270f1/AtelierG_widgetsEtBoutonsToolbar.png) | widgets "moins bien que ceux de Tkinter mais pouvant rendre service, modification des objets de matpotlib, ajout d'outils à la barre d'outils | |
|
|
|
|
|
|
\##Points théorie [Layout = Disposition de vignettes dans une figure : subplots et gridspecs](https://gitlab.irstea.fr/christine.poulard/atelier-matplotlib/-/wikis/Point-Th%C3%A9orie-:-Subplots)
|
|
|
| Atelier | Exemple | Notions centrales & additionnelles |
|
|
|
|---------|---------|------------------------------------|
|
|
|
| B) Atelier 1 : Un premier graphique, avec un axe des x et un axe des y | ![AtelierB1_PremiereFigure](uploads/4814f2260d6243b457d1c05706167d44/AtelierB1_PremiereFigure.png) | _voir repl en ligne_ | |
|
|
|
| [B1) Un premier graphe très simple](/christine.poulard/atelier-matplotlib/-/wikis/AtelierB1_Graphiques_simples) | [Fig1_graphique_basique2](uploads/b8cbe463f1de72fce4a7825e44704559/Fig1_graphique_basique2.png)| entrée en matière|
|
|
|
| [B2) lire un fichier texte et extraire l'information](/christine.poulard/atelier-matplotlib/-/wikis/Atelier1_2) | ![FigureB2_feuilledestyle](uploads/5315b3712be9191c3d5c28498618cdf3/FigureB2_feuilledestyle.PNG) | lire un fichier et parser ; gestion des dates avec datetime |
|
|
|
| [C) Atelier 2 : un graphique avec un 2e axe des y ; les objets d'une figure](/christine.poulard/atelier-matplotlib/-/wikis/AtelierC) | ![Figure_3_graphique_PTQ_subplots](uploads/31dcb119ac7b2e3521a9a7b831010756/Figure_3_graphique_PTQ_subplots.png) | Définitions "objet" de Figure et Axes ; créer une 2e courbe avec un 2e axe des y ; partager un même axe des x sur deux vignettes différentes. Différence entre légende d'Axes et de Figure. Customiser une légende (voir illustration en tête de page) |
|
|
|
| [D) Atelier 3 : pour changer, une carte ('heatmap') à partir d'une matrice, avec sa colormap](/christine.poulard/atelier-matplotlib/-/wikis/Atelier_D_carte) ; avec quelques imports/exports entre mpl et QGis | ![carte](uploads/3495d20090b9fa6f99526442c859cf9b/carte.png) | lecture et tracé des shapes (ici, sans geopandas) ; représentation d'une matrice avec imshow; notion de colormap ; customisation d'une colorbar discrète par une liste de couleurs ou par discrétisation d'une colormap continue |
|
|
|
| [E) Atelier 4 : on revient au traitement de chroniques, dans le cas de longues séries](Atelier_E_longues_series) : amélioration de l'affichage des étiquettes de date sans pandas ; on pourra travailler avec le fichier de l'atelier 1 et/ou un fichier binaire | | problèmes spécifiques des longues séries (cette section sera étoffée si besoin exprimé) |
|
|
|
| **NIVEAU AVANCE** | **interactions : événements et WIDGETS** | |
|
|
|
| [Atelier événement : notion d'événement, de callback ; mise à jour d'un graphique ](Atelier_clics): exemple d'un "clic sur un graphique" qui va donner des infos sur le point le plus proche, via PICKER ; notions de distance "en unités du graphiques" et "en unité écran" | ![selection_point_mouseclick_2courbes](uploads/197d80a53567be4fb1ec3f375240f1ad/selection_point_mouseclick_2courbes.png) | événement, liaison événement fonction |
|
|
|
| [F) Atelier 5 : widgets et prétraitement de longues chroniques avant visualisation ](Atelier_F_pretraitement): adaptation de la résolution | ![PresentationVisuSerieDynamique](uploads/bfd9cfbd308afc6ff7455467f650ab64/PresentationVisuSerieDynamique.png) | pandas et rééchantillonnage, surcharge des outils de la barre d'outils |
|
|
|
| [G) Atelier 6 : les widgets de matplotlib : slider et checkbutton](Atelier_G_widgets) : plusieurs exemples de difficulté croissante mais plus simple que le F ; | ![AtelierG_widgetsEtBoutonsToolbar](uploads/9b805cf3cb4d2d384c7f07b7e19270f1/AtelierG_widgetsEtBoutonsToolbar.png) | widgets "moins bien que ceux de Tkinter mais pouvant rendre service, modification des objets de matpotlib, ajout d'outils à la barre d'outils |
|
|
|
|
|
|
##Points théorie
|
|
|
[Layout = Disposition de vignettes dans une figure : subplots et gridspecs](https://gitlab.irstea.fr/christine.poulard/atelier-matplotlib/-/wikis/Point-Th%C3%A9orie-:-Subplots)
|
|
|
|
|
|
### A venir ou à compléter : [Galerie](galerie_mpl_hypopo), [(dys)Lexique](Lexique), futurs ateliers, tuto plus complet...
|
|
|
|
|
|
#### Présentation des contributeur(s)
|
|
|
|
|
|
Christine Poulard : équipe Hydrologie des Bassins Versants. Pratique de PYTHON 3 depuis 5 ans (en attendant Julia ?...)![Fig1_graphique_basique2](uploads/b8cbe463f1de72fce4a7825e44704559/Fig1_graphique_basique2.png) |
|
|
\ No newline at end of file |
|
|
Christine Poulard : équipe Hydrologie des Bassins Versants. Pratique de PYTHON 3 depuis 5 ans (en attendant Julia ?...)! |
|
|
\ No newline at end of file |