URL: https://linuxfr.org/news/matplotlib-11-et-autres-outils-de-visualisation-en-python Title: Matplotlib 1.1 et autres outils de visualisation en Python Authors: Nonolapéro Date: 2011年10月13日T08:58:52+02:00 License: CC By-SA Tags: python, visualisation, mathématiques, matplotlib, calcul_scientifique, numpy et scipy Score: 27 Matplotlib est une bibliothèque en Python très utilisée pour tracer des graphiques en deux et trois dimensions. Le degré de sophistication peut être très élevé mais les choses simples le restent ; pour se donner une idée, il suffit de regarder la [galerie d’exemples](http://matplotlib.sourceforge.net/gallery.html). En combinaison avec les bibliothèques scientifiques [NumPy](http://numpy.scipy.org/) ou [SciPy](http://www.scipy.org/) et l’interpréteur IPython, nous obtenons un outil de prototypage très pratique. Matplotlib n’est pas exempte de limitations, pour de grosses séries de données ou des visualisations complexes en trois dimensions. Il faut alors se tourner vers d’autres outils tels que [_guiqwt_](http://packages.python.org/guiqwt/index.html) ou [Mayavi](http://github.enthought.com/mayavi/mayavi/), si l’on veut rester avec des outils en Python. ---- [Site officiel](http://matplotlib.sourceforge.net/) [Les nouveautés de la version 1.1](http://matplotlib.sourceforge.net/users/whats_new.html) [guiqwt](http://packages.python.org/guiqwt/index.html) [Mayavi](http://github.enthought.com/mayavi/mayavi/) ---- #Matplotlib# Cette nouvelle version de Matplotlib est compatible avec Python 2.4 à 2.7, et la prochaine version ajoutera la compatibilité avec Python 3. ## Diagrammes de Sankey ## La représentation de [diagrammes de Sankey](http://en.wikipedia.org/wiki/Sankey_diagram) est désormais possible. Ces diagrammes permettent de représenter l’importance de flux en jouant sur la largeur des flèches. ## Animations ## Un nouveau _framework_ indépendant du moteur d’affichage (Matplotlib en possède une panoplie dont PS, SVG, GTK ou Qt Agg, PDF, Wx et Tk) fait son apparition pour l’animation des figures. Encore en statut bêta... à tester ! ## Tight Layout ## Un comportement assez ennuyeux de Matplotlib est qu’il a tendance à produire des graphes où les textes se superposent ou sortent du graphique. C’est alors à l’utilisateur de prendre le contrôle sur la taille et la position des éléments du graphe pour obtenir un résultat acceptable. La nouvelle commande `tight_layout()` permet maintenant un arrangement plus intelligent du graphique, en calculant correctement la place nécessaire aux intitulés d’axes, titres, etc.. ![Exemple sans Tight Layout](http://matplotlib.sourceforge.net/users/whats_new-1_00_00.png) ![Exemple avec Tight Layout](http://matplotlib.sourceforge.net/users/whats_new-1_01_00.png) ## PyQt4, PySide ## Le moteur d’affichage en Qt4 est maintenant compatible avec les interfaces Python de Qt4 : PyQt4 et PySide. ## Légendes ## L’affichage des légendes a été amélioré. Plus de détails sur ce qu’il est possible de faire à l’adresse . ## 3D ## Le travail sur la simplification de l’interface pour créer des graphiques tridimensionnels continue. La classe Axes3D se rapproche de plus en plus de sa cousine en 2D, de la documentation a été ajoutée, etc.. ## Divers ## * les listes des symboles des fonctions `plot()` (tracé de courbes) et `scatter()` (tracé de nuages de points) ont été fusionnées pour une plus grande cohérence de l’interface ; * on peut maintenant nommer les figures lors de leur création, via `figure()` ; * pour `imshow()` (tracé d’images), l’interpolation _nearest_ devient une véritable interpolation, tandis que l’option _none_ la désactive complètement. En outre, la consommation de la mémoire a été réduite ; * gestion des unités pour les axes et les flèches en coordonnées polaires ; * correction d’erreurs dans le passage d’arguments pour les fonctions triples telles que `tripcolor()` ; * le paramètre `« axes.labelweight »` a été ajouté à rcParams ; * corrections d’une erreur lors d’une [projection de Hammer](http://en.wikipedia.org/wiki/Hammer_projection) ; * Jae‐Joon Lee a ajouté les classes `HBox` et `VBox` ; * `scatter()` accepte désormais les entrées vides ; * _the behavior for ‘symlog’ scale has been fixed, but this may result in some minor changes to existing plots. This work was refined by ssyr ;_ * Michiel de Hoon a modifié le _back‐end_ pour Mac OS X, afin que son comportement soit similaire avec les autres back‐ends ; * nombreuses corrections de bogues et amélioration de la documentation. # Autres outils de visualisation # ## guiqwt ## _guiqwt_ est un outil qui permet de créer des interfaces graphiques pour visualiser et exploiter des données. Il se distingue de Matplotlib par un nombre plus restreint de types de graphes. La contre‐partie est un gain de performance, comme expliqué sur cette [page](http://packages.python.org/guiqwt/overview.html#performances). Une qualité de cet outil est qu’il est livré avec de nombreux [exemples](http://packages.python.org/guiqwt/examples.html) qui permettent de facilement se l’approprier. ## Mayavi ## Matplotlib permet de visualiser des données en trois dimensions mais ce n’est pas l’outil le plus adapté. Mayavi offre une meilleure alternative pour cette activité, tout en fournissant une interface simple comme Matplotlib. Mayavi s’appuie sur la bibliothèque [[VTK]] et permet d’ajuster des paramètres de visualisation par un jeu de classes Python ou bien avec des boîtes de dialogues.

AltStyle によって変換されたページ (->オリジナル) /