Offizielle Dokumente: Matplotlib, Pyplot und Pylab: Wie hängen sie zusammen?
Beide Importe machen genau das Gleiche und führen genau den gleichen Code aus. Es handelt sich lediglich um verschiedene Arten des Imports der Module.
Beachten Sie auch, dass matplotlib
zwei Schnittstellenebenen vorhanden sind, eine von einer verwalteten Zustandsmaschinenebene pyplot
und die OO-Schnittstelle pyplot
, auf der aufgebaut ist. Siehe Wie kann ich einer Figureninstanz eine Pyplot-Funktion hinzufügen?
pylab
ist eine saubere Methode, um eine ganze Reihe hilfreicher Funktionen (die pyplot
meisten der Zustandsmaschinenfunktionen numpy
) in einem einzigen Namensraum zu importieren . Der Hauptgrund dafür besteht (nach meinem Verständnis) ipython
darin, eine sehr schöne interaktive Shell zu erstellen, die MATLAB mehr oder weniger repliziert (um den Übergang zu erleichtern und um herumzuspielen). Siehe pylab.py
undmatplotlib/pylab.py
In gewisser Hinsicht ist dies eine reine Geschmackssache und hängt ein wenig davon ab, was Sie tun.
Wenn Sie nicht in eine GUI einbetten (entweder mit einem nicht interaktiven Backend für Bulk-Skripte oder mit einem der bereitgestellten interaktiven Backends), ist dies die typische Vorgehensweise
import matplotlib.pyplot as plt
import numpy as np
plt.plot(....)
was den Namensraum nicht verschmutzt. Ich bevorzuge dies, damit ich verfolgen kann, woher die Sachen kamen.
Wenn du benutzt
ipython --pylab
Dies entspricht dem Laufen
from pylab import *
Es wird jetzt empfohlen, diese für neue Versionen von ipython
Ihnen zu verwenden
ipython --matplotlib
Dadurch werden alle richtigen Hintergrunddetails eingerichtet, damit die interaktiven Backends einwandfrei funktionieren, es wird jedoch kein Massenimport durchgeführt. Sie müssen die gewünschten Module explizit importieren.
import numpy as np
import matplotlib.pyplot as plt
ist ein guter Anfang.
Wenn Sie matplotlib
in eine GUI einbetten, möchten Sie kein Pyplot importieren, da dadurch zusätzliche GUI-Hauptschleifen gestartet werden. Was genau Sie importieren sollten, hängt davon ab, was Sie genau tun.