oficjalne docs: Matplotlib, pyplot and pylab: how are they related?
Oba te importu sprowadzają się nie robi dokładnie to samo i będzie działał dokładnie ten sam kod, to tylko różne sposoby importowania modułów.
Należy również pamiętać, że matplotlib
ma dwie warstwy interfejsu, warstwa najnowocześniejsze maszyny zarządzanej przez pyplot
oraz interfejs OO pyplot
jest zbudowany na szczycie, zob How can I attach a pyplot function to a figure instance?
pylab
jest czysty sposób do importu zbiorczego całe mnóstwo pomocne funkcje (funkcja maszyny stanu pyplot
, większość z numpy
) w pojedynczą przestrzeń nazw. Głównym powodem tego jest (do mojego zrozumienia) jest praca z ipython
, aby stworzyć bardzo ładną interaktywną powłokę, która bardziej lub mniej replikuje MATLAB (aby ułatwić przejście i jest dobry do zabawy). Zobacz pylab.py
i matplotlib/pylab.py
Na pewnym poziomie, to czysto kwestia gustu i zależy trochę od tego, co robisz.
Jeśli jesteś nie osadzania w GUI (przy użyciu nieinteraktywny backend skryptów luzem lub przy użyciu jednego z dostarczonych interaktywnych backendów) typową rzeczą do zrobienia jest
import matplotlib.pyplot as plt
import numpy as np
plt.plot(....)
który robi” t zanieczyszcza przestrzeń nazw. Wolę to, więc mogę śledzić skąd pochodzą.
Jeśli używasz
ipython --pylab
jest to równoznaczne z prowadzeniem
from pylab import *
Obecnie zaleca się, aby do nowych wersji ipython
użyć
ipython --matplotlib
który ustanowi wszystko odpowiednie szczegóły tła, aby interaktywne backendy działały ładnie, bu t nie importuje niczego zbiorczego. Będziesz musiał jawnie zaimportować żądane moduły.
import numpy as np
import matplotlib.pyplot as plt
to dobry początek.
Jeśli osadzasz matplotlib
w gui, nie chcesz importować Pyplota, ponieważ spowoduje to uruchomienie dodatkowych pętli głównych GUI, a dokładnie to, co powinieneś zaimportować, zależy od tego, co dokładnie robisz.
możliwy duplikat [Jaka jest różnica między pylab a pyplot?] (Http://stackoverflow.com/questions/11469336/what-is-the-difference-between-pylab-and-pyplot) – tacaswell
Samozwańcza duplikacja ? –