Python--Matplotlib庫函式文件API
在此將Python中Matplotlib的庫函式進行總結,方便大家的學習查閱。
本文轉自https://www.cnblogs.com/TensorSense/p/6795995.html
plt.savefig(‘test’, dpi = 600) :將繪製的圖畫儲存成png格式,命名為 test
plt.ylabel(‘Grade’) : y軸的名稱
plt.axis([-1, 10, 0, 6]) : x軸起始於-1,終止於10 ,y軸起始於0,終止於6
plt.subplot(3,2,4) : 分成3行2列,共6個繪圖區域,在第4個區域繪圖。排序為行優先。也可 plt.subplot(324),將逗號省略。
.plot函式
plt.plot(x, y, format_string, **kwargs): x為x軸資料,可為列表或陣列;y同理;format_string 為控制曲線的格式字串, **kwargs 第二組或更多的(x, y, format_string)
format_string: 由 顏色字元、風格字元和標記字元組成。
顏色字元:‘b’藍色 ;‘#008000’RGB某顏色;‘0.8’灰度值字串
風格字元:‘-’實線;‘–’破折線; ‘-.’點劃線; ‘:’虛線 ; ‘’‘’無線條
標記字元:‘.’點標記 ‘o’ 實心圈 ‘v’倒三角 ‘^’上三角
eg: plt.plot(a, a*1.5, ‘go-’, a, a*2, ‘*’) 第二條無曲線,只有點
.plot 顯示中文字元
pyplot並不預設支援中文顯示,需要rcParams修改字型來實現
rcParams的屬性:
‘font.family’ 用於顯示字型的名字
‘font.style’ 字型風格,正常’normal’ 或斜體’italic’
‘font.size’ 字型大小,整數字號或者’large’ ‘x-small’
eg:
import matplotlib
matplotlib.rcParams[‘font.family’] = ‘STSong’
matplotlib.rcParams[‘font.size’] = 20
設定繪製區域的全部字型變成 華文仿宋,字型大小為20
中文顯示2:只希望在某地方繪製中文字元,不改變別的地方的字型
在有中文輸出的地方,增加一個屬性: fontproperties
eg:
plt.xlabel(‘橫軸:時間’, fontproperties = ‘simHei’, fontsize = 20)
pyplot文字顯示函式:
plt.xlabel():對x軸增加文字標籤
plt.ylabel():同理
plt.title(): 對圖形整體增加文字標籤
plt.text(): 在任意位置增加文字
plt. annotate(s, xy = arrow_crd, xytext = text_crd, arrowprops = dict)
: 在圖形中增加帶箭頭的註解。s表示要註解的字串是什麼,xy對應箭頭所在的位置,xytext對應文字所在位置,arrowprops定義顯示的屬性
eg:
plt.xlabel(‘橫軸:時間’, fontproperties = ‘SimHei’, fontsize = 15, color = ‘green’)
plt.ylabel(‘縱軸:振幅’, fontproperties = ‘SimHei’, fontsize = 15)
plt.title(r’正弦波例項 ’ , fontproperties = ‘SimHei’, fontsize = 25)
plt.annotate (r’%mu=100$, xy = (2, 1), xytext = (3, 1.5),
arrowprops = dict(facecolor = ‘black’, shrink = 0.1, width = 2)) # width表示箭頭寬度
plt.text (2, 1, r’, fontsize = 15)
plt.grid(True)
plt. annotate(s, xy = arrow_crd, xytext = text_crd, arrowprops = dict)
plt子繪圖區域
plt.subplot2grid(GridSpec, CurSpec, colspan=1, rowspan=1):設定網格,選中網格,確定選中行列區域數量,編號從0開始。
eg:
plt.subplot2grid((3, 3), (1, 0), colspan = 2) : (3,3)表示分為3行3列,(1,0)表示選中第1行,第0列的區域進行繪圖,colspan=2表示在選中區域的延伸
GridSpec類
Plot的圖表函式
plt.plot(x,y , fmt) :繪製座標圖
plt.boxplot(data, notch, position): 繪製箱形圖
plt.bar(left, height, width, bottom) : 繪製條形圖
plt.barh(width, bottom, left, height) : 繪製橫向條形圖
plt.polar(theta, r) : 繪製極座標圖
plt.pie(data, explode) : 繪製餅圖
plt.scatter(x, y) :繪製散點圖
plt.hist(x, bings, normed) : 繪製直方圖
繪製餅圖
explode表示突出,如橘色這一塊突出;autopct 表示顯示資料的格式; shadow表示二維餅圖;startangle表示起始的角度;
此為橢圓形餅圖,要為圓形,可新增: plt.axis(‘equal’)
繪製直方圖
bings將直方圖的取值範圍進行均等劃分bings個區間;
normed =1 表示將出現頻次進行了歸一化。 normed=0,則為頻次;
alpha表示直方圖的透明度[0, 1] ;
histtype = ‘stepfilled’ 表示去除條柱的黑色邊框
面向物件的極座標圖繪製
面向物件散點圖繪製
將subplots()變成一個物件,fig和ax表示subplots生成的圖表以及相關區域。subplots為空時,預設為subplots(111).