Офіційні документи: Matplotlib, pyplot та pylab: як вони пов’язані?
Обидва ці імпорти киплять, роблячи абсолютно те саме, і запускатимуть однаковий код, це просто різні способи імпорту модулів.
Також зверніть увагу, що він matplotlibмає два шари інтерфейсу, рівень автомата, яким керує pyplotі інтерфейс OO, який pyplotпобудований поверх, див .
pylabце чистий спосіб масового імпорту цілого ряду корисних функцій ( pyplotбільшість функцій автомата numpy) в єдиний простір імен. Основна причина, за якою це існує (на моє розуміння), - це робота ipythonнад створенням дуже приємної інтерактивної оболонки, яка більш-менш повторює MATLAB (щоб полегшити перехід і тому, що це добре для гри). Подивитисяpylab.py іmatplotlib/pylab.py
На якомусь рівні це суто питання смаку і трохи залежить від того, що ви робите.
Якщо ви не вбудовуєте в графічний інтерфейс (або використовуючи неінтерактивну серверну частину для масових сценаріїв, або використовуючи одну з наданих інтерактивних серверних систем), типовим завданням є
import matplotlib.pyplot as plt
import numpy as np
plt.plot(....)
що не забруднює простір імен. Я віддаю перевагу цьому, щоб я міг відслідковувати, звідки взялися речі.
Якщо ви використовуєте
ipython --pylab
це еквівалентно бігу
from pylab import *
Зараз рекомендується використовувати для нових версій, які ipythonви використовуєте
ipython --matplotlib
який налаштує всі належні фонові деталі, щоб інтерактивні серверні системи працювали гарно, але не буде масово імпортувати нічого. Вам потрібно буде явно імпортувати потрібні модулі.
import numpy as np
import matplotlib.pyplot as plt
це хороший початок.
Якщо ви вбудовуєте matplotlibв графічний інтерфейс, ви не хочете імпортувати pyplot, оскільки це запустить додаткові основні цикли gui, і саме те, що вам слід імпортувати, залежить від того, що саме ви робите.