matplotlib是Python程式語言及其數值數學擴展包 NumPy的可視化操作界面。它利用通用的圖形用戶界面工具包,如Tkinter, wxPython, Qt或GTK+,向應用程式嵌入式繪圖提供了應用程式接口(API)。此外,matplotlib還有一個基於圖像處理庫(如開放圖形庫OpenGL)的pylab接口,其設計與MATLAB非常類似--儘管並不怎麼好用。SciPy就是用matplotlib進行圖形繪製。
matplotlib最初由John D. Hunter撰寫,它擁有一個活躍的開發社區,並且根據BSD樣式許可證分發。在John D. Hunter2012年去世前不久,Michael Droettboom被提名為matplotlib的主要開發者。
案例
import matplotlib.pyplot as pltimport numpy as npa = np.linspace(0,10,100)b = np.exp(-a)plt.plot(a,b)plt.show()import matplotlib.pyplot as pltfrom numpy.random import normal,randx = normal(size=200)plt.hist(x,bins=30)plt.show()import matplotlib.pyplot as pltfrom numpy.random import randa = rand(100)b = rand(100)plt.scatter(a,b)plt.show(from matplotlib import cmfrom mpl_toolkits.mplot3d import Axes3Dimport matplotlib.pyplot as pltimport numpy as npfig = plt.figure()ax = fig.gca(projection='3d')X = np.arange(-5, 5, 0.25)Y = np.arange(-5, 5, 0.25)X, Y = np.meshgrid(X, Y)R = np.sqrt(X**2 + Y**2)Z = np.sin(R)surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=cm.coolwarm)plt.show()matplotlib官方現在發布了學習手冊cheatsheets,大家可以在Github下載,其地址為:
https://github.com/matplotlib/cheatsheets
參考:
[1] https://zh.wikipedia.org/wiki/Matplotlib
[2] https://github.com/matplotlib/cheatsheets
如需聯繫EasyShu團隊
請加微信:EasyCharts
微信公眾號【EasyShu】博文代碼集合地址
https://github.com/Easy-Shu/EasyShu-WeChat
《Python數據可視化之美》-配套原始碼下載地址
https://github.com/Easy-Shu/Beautiful-Visualization-with-python
《R語言數據可視化之美》-增強版配套原始碼下載地址
https://github.com/Easy-Shu/Beautiful-Visualization-with-R