用python的前輩們,pylab是matplotlib的一個模塊嗎,跟pyplot又是什麼關係呢?
01-02
剛開始看python的科學計算模塊,想先總體上了解一下各模塊,但感覺有點亂:
1、pylab是matplotlib的一個模塊嗎? 在python中是可以通過matplotlib.pylab導入的說明它應該是matlotlib的模塊。但同時直接導入pylab也行,而且在官網的模塊列表中並沒有pylab,官方指導中也只有很少幾處提及。看別人博客,有說「pylab不僅包含matplotlib還包含numpy,導入pylab就不用導入numy了」,這樣它應該不是matplotlib的一個模塊。
此外pylab跟ipython的pylab模式又有什麼關係2、pylab與pyplot是什麼關係? 「The matplotlib code is conceptually divided into three parts: the pylab interface is the set of functions provided by matplotlib.pylab which allow the user to create plots with code quite similar to MATLAB figure generating code (Pyplot tutorial). 」Introduction
上面是官方指導的一段話,說matplotlib代碼可分為三類,第一類是pylab交互界面,但後面給的鏈接卻是pyplot的介紹,是弄錯了嗎,還是兩者有什麼關係?
1. 是。你 locate pylab.py 就知道了:matplotlib 放了個單獨的模塊在 /usr/lib/python3.3/site-packages/pylab.py,自己看其內容。2. pyplot 是 matplotlib 的一個模塊。具體請看文檔。(可以執行 pydoc3 --p 3000 然後按 b 在瀏覽器里看)
看到官網寫了這麼一段話,應該可以解釋
pylab is a convenience module that bulk imports matplotlib.pyplot (for plotting) and numpy (for mathematics and working with arrays) in a single name space. Although many examples use pylab, it is no longer recommended.
還有這是stackoverflow上的解釋python - Which is the recommended way to plot: matplotlib or pylab?pylab將許多常用的module集中到統一的namespace,目標是提供一個類matlab的工作環境,使用者無需自行import所需功能。不過import explicitly是編程的好習慣,讓命名空間乾淨些,如無必要應避免使用pylab。
(pyplot是matplotlib的繪圖界面)我記得pylab似乎更側重於交互(即ipython)中使用,一般編程用pyplot就可以了。
pylab是用來做互動式實驗用的
已經有了matplotlib.pyplot和numpy庫,用起來和matlab類似,可以省去很多包名。
推薦閱讀:
※windows下如何安裝libxml2?
※Python 中的 for 循環如何使用?
※Python3 是否已經完成了取代 Python2 的歷史進程?
※求一本 Python 3 的好書,入門級別或中等級別,求推薦?
※Python操作MySQL資料庫安全嗎?