Dokumen resmi: Matplotlib, pyplot dan pylab: apa hubungannya?
Kedua impor tersebut bermuara pada melakukan hal yang persis sama dan akan menjalankan kode yang sama persis, itu hanya cara yang berbeda untuk mengimpor modul.
Perhatikan juga bahwa matplotlib
memiliki dua lapisan antarmuka, lapisan mesin-negara yang dikelola oleh pyplot
dan antarmuka OO pyplot
dibangun di atasnya, lihat Bagaimana cara melampirkan fungsi pyplot ke instance gambar?
pylab
adalah cara bersih untuk mengimpor secara massal seluruh fungsi yang berguna ( pyplot
sebagian besar fungsi mesin negara numpy
) ke dalam satu ruang nama. Alasan utama ini ada (menurut pemahaman saya) adalah untuk bekerja dengan ipython
membuat shell interaktif yang sangat bagus yang kurang lebih mereplikasi MATLAB (untuk membuat transisi lebih mudah dan karena bagus untuk bermain-main). Lihat pylab.py
danmatplotlib/pylab.py
Pada tingkat tertentu, ini murni masalah selera dan sedikit bergantung pada apa yang Anda lakukan.
Jika Anda tidak menyematkan di gui (baik menggunakan backend non-interaktif untuk skrip massal atau menggunakan salah satu backend interaktif yang disediakan), hal yang biasa dilakukan adalah
import matplotlib.pyplot as plt
import numpy as np
plt.plot(....)
yang tidak mencemari ruang nama. Saya lebih suka ini sehingga saya dapat melacak dari mana barang itu berasal.
Jika Anda menggunakan
ipython --pylab
ini sama dengan berlari
from pylab import *
Sekarang disarankan untuk versi baru ipython
Anda gunakan
ipython --matplotlib
yang akan mengatur semua detail latar belakang yang tepat untuk membuat backend interaktif berfungsi dengan baik, tetapi tidak akan mengimpor apa pun secara massal. Anda perlu mengimpor modul yang diinginkan secara eksplisit.
import numpy as np
import matplotlib.pyplot as plt
adalah awal yang baik.
Jika Anda menyematkan matplotlib
di gui, Anda tidak ingin mengimpor pyplot karena hal itu akan memulai loop utama gui tambahan, dan apa yang harus Anda impor bergantung pada apa yang Anda lakukan.