204 votes

Quelle est la différence entre pylab et pyplot ?

Quelle est la différence entre matplotlib.pyplot et matplotlib.pylab ?

Lequel est préféré pour quel usage ?

Je suis un peu confus, car il semble qu'indépendamment de l'endroit d'où j'importe, je peux faire les mêmes choses. Qu'est-ce qui me manque ?

0 votes

Cette question est marquée comme étant le doublon parce que l'autre ne recommande pas l'utilisation de pylab selon la documentation officielle. Voir cette réponse .

166voto

Hooked Points 16345

De la documentation L'accent est mis par moi :

Matplotlib est l'ensemble du paquet ; pylab est un module de matplotlib qui est installé en parallèle. matplotlib ; et matplotlib.pyplot est un module de matplotlib.

Pyplot fournit l'interface état-machine à la bibliothèque de traçage sous-jacente dans matplotlib. Cela signifie que les figures et les axes sont implicitement et automatiquement créés pour obtenir le tracé souhaité. Par exemple, l'appel de plot à partir de pyplot créera automatiquement la figure et les axes nécessaires pour obtenir le tracé souhaité. Si vous définissez un titre, ce titre sera automatiquement associé à l'objet d'axe actuel :

Pylab combine la fonctionnalité pyplot (pour le traçage) avec la fonctionnalité numpy (pour les mathématiques et le travail avec des tableaux) dans un seul espace de noms, rendant cet espace de noms (ou environnement) encore plus proche de MATLAB. Par exemple, on peut appeler les fonctions sin et cos comme on le ferait dans MATLAB, tout en bénéficiant de toutes les fonctionnalités de pyplot.

Le site L'interface pyplot est généralement préférée pour les tracés non interactifs. (c'est-à-dire les scripts). Le site L'interface pylab est pratique pour les calculs et les tracés interactifs. car cela minimise la saisie. Notez que c'est ce que vous obtenez si vous utilisez le shell ipython avec l'option -pylab, qui importe tout de pylab et rend le traçage entièrement interactif.

4 votes

De la matplotlib faq il semble qu'ils n'apprécient pas le Pylab : "pylab est un module de commodité qui importe en bloc matplotlib.pyplot (pour le traçage) et numpy (pour les mathématiques et le travail avec des tableaux) dans un seul espace de nom. Bien que de nombreux exemples utilisent pylab, ce n'est plus recommandé. "

11 votes

@Reb.Cabin matplotlib.org/exemples/api/agg_oo.html L'idée derrière l'interface orientée objet est de ne pas utiliser plt.figure() plt.plot(x,y) .. plt.* et laisser pyplot deviner à quelle figure vous faites référence, vous (le développeur) êtes responsable de faire référence à l'objet Figure ou Axes.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X