matplotlib庫 常用函式筆記
fig, ax = plt.subplots(figsize=(6,5)) #建立一個fig物件,建立一個axis物件
(也可以
fig=plt.figure()
ax=fig.add_subplot(111)
來建立 只不過比較複雜 )
matplotlib.pyplot.subplots(nrows=1, ncols=1,sharex=False, sharey=False,squeeze=True,subplot_kw=None, gridspec_kw=None, **fig_kw)
建立一個畫像
nrows,ncols:整型,可選引數,預設為1。表示子圖網格(grid)的行數與列數。
sharex,sharey:布林值或者{'none','all','row','col'},預設:False
控制x(sharex)或y(sharey)軸之間的屬性共享:
1.True或者'all':x或y軸屬性將在所有子圖(subplots)中共享.
2.False或'none':每個子圖的x或y軸都是獨立的部分
3.'row':每個子圖在一個x或y軸共享行(row)
4.'col':每個子圖在一個x或y軸共享列(column)
當子圖在x軸有一個共享列時('col'),只有底部子圖的x tick標記是可視的。
同理,當子圖在y軸有一個共享行時('row'),只有第一列子圖的y tick標記是可視的。
plt.plot
繪製y 關於x的函式影象曲線
ax.legend() 或者 plt.legend()用於圖例顯示 loc表示位置,(也就是曲線的名稱)
plt.xlabel(' ') 或者 ax.set_xlabel(' ') x軸的名稱
plt.ylabel(' ') 或者 ax.set_ylabel
plt.title(' ') 或者 ax.set_title(' ') 整幅影象的名稱
繪製散點圖:
ax.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, verts=None, edgecolors=None, hold=None, data=None, **kwargs)#設定散點的各個引數
plt.scatter()
(marker表示形狀,c表示顏色,label表示元素名稱)注意顏色不是一個單一的,而是一個二維行陣列。
繪製圖片:
ax.imshow(X,cmap=None,norm=None,aspect=None,interplotation=None,alpha=None,Vmin=None,vmax= None,origin=None,extent=None,shape=None,filternorm=1,filterrad=4.0,imlim=None,resample=None,url=None,hold=None,data=None, **kwargs)
X:類陣列物件(array_like),shape(n,m) 或者(n,m,3)或者(n,m,4)
把X表示的圖片顯示在當前座標軸中。X可以是類陣列形式、或者PIL圖片。
cmap:預設"None",可設為 “colormap"
如果是“None”,預設rc值符合 image.cmap 。如果X是3-D,則cmap會被忽略,而採用 具體的RGB(A)值。
plt.contourf(X,Y,height(X,Y),10,alpha=0.75,cmap=plt.cm.hot)
前三個引數依次為 X, Y, Z(高度)
#為等高線填充顏色 10表示按照高度分成10層 alpha表示透明度 cmap表示漸變標準
plt.xticks() ax.set_xticks()
set_xticks和set_xticklabels。前者告訴matplotlib要將刻度放在資料範圍中的哪些位置,預設情況下,這些位置也就是刻度標籤。但我們可以通過set_xticklabels將任何其他的值用作標籤:
對於yticks同理
plt.grid(True, linestyle = "-.", color = "r", linewidth = "3") ax.grid()
True 顯示網格
linestyle 設定線顯示的型別(一共四種)
color 設定網格的顏色
linewidth 設定網格的寬度