Matplotlib 是一個 Python 的 2D繪圖庫,它以各種硬拷貝格式和跨平臺的交互式環境生成出版質量級別的圖形。它提供了一個面向對象的API,用于嵌入到使用通用GUI工具包的程序中,同時也支持快速繪圖的過程式接口。Matplotlib 是由John D. Hunter創立,并由一個活躍的開發社區維護,遵循BSD許可證發布。
開發歷史
Matplotlib最初由John D. Hunter撰寫,Michael Droettboom和Thomas Caswell是其后的主要開發者。Matplotlib是一個由NumFOCUS財政資助的項目。
功能與服務
理論介紹
通過 Matplotlib,開發者可以僅需要幾行代碼,便可以生成繪圖,直方圖,功率譜,條形圖,錯誤圖,散點圖等。Matplotlib的設計初衷是為Python提供一個類似于MATLAB的繪圖接口,使得用戶可以在Python環境中進行高效的圖形繪制,并享受開源的便利。
Matplotlib基礎知識
Matplotlib中的基本圖表包括的元素有:x軸和y軸、軸線、刻度、刻度標簽和繪圖區域。hold屬性默認為True,允許在一幅圖中繪制多個曲線。將hold屬性修改為False,每一個plot都會覆蓋前面的plot。可以使用濾線柵方法(設置參數與plot函數相同,如.lw代表linewidth控制線粗細,.alpha調節線體明暗度)為圖添加網格線,并通過axis、xlim和ylim方法設置坐標軸范圍,如果axis方法沒有任何參數,則返回當前坐標軸的上下限。圖例方法可以用于添加圖例,推薦在plot函數中增加label參數。
Matplotlib的配置信息可以從配置文件讀取,支持永久配置和動態配置。在配置文件中可以為matplotlib的幾乎所有屬性指定永久有效的默認值。配置方法的優先級為:Matplotlib函數、當前目錄的matplotlibrc文件、用戶級matplotlibrc文件、全局matplotlibrc文件。通過rcParams字典可以訪問并修改所有已經加載的配置項。
功能特色
與MATLAB的比較
pyplot是matplotlib的一個模塊,它提供了一個類似MATLAB的接口。Matplotlib被設計成與MATLAB一樣可用,能夠使用Python,并且具有自由開源的優點。
與gnuplot的比較
gnuplot和matplotlib都是成熟的開源項目,它們都可以產生多種不同繪圖類型。雖然它們各有優點和缺點,但很難指定一種某人能做而他人不能做的圖形類型。
相關事件
為了致敬xkcd,matplotlib加入了`matplotlib.pyplot.xkcd()`函數,模仿xkcd的漫畫風格進行繪圖。
參考資料 >