一、matplotlib 介紹
matplotlib: 最流行的Python底層繪圖庫,主要做數(shù)據(jù)可視化圖表,名字取材于MATLAB,模仿MATLAB構(gòu)建。
Matplotlib是Python中最常用的可視化工具之一,可以非常方便地創(chuàng)建海量類型地2D圖表和一些基本的3D圖表,可根據(jù)數(shù)據(jù)集(DataFrame,Series)自行定義x,y軸,繪制圖形(線形圖,柱狀圖,直方圖,密度圖,散布圖等等),能夠解決大部分的需要。Matplotlib中最基礎(chǔ)的模塊是pyplot。
官方網(wǎng)站: https://matplotlib.org/
二、matplotlib 使用方法
matplotlib使用方案
詳細流程及指令:
三、pyplot基礎(chǔ)用法
0.導(dǎo)入庫
import matplotlib.pyplot as plt # 下文全部以plt代表著pyplot
1.創(chuàng)建畫布與創(chuàng)建子圖
| 函數(shù)名稱 | 函數(shù)作用 | 函數(shù)說明鏈接 | 主要參數(shù)解釋 |
|---|---|---|---|
| fig= plt. figure(figsize, facecolor) | 創(chuàng)建一個空白畫布,figsize參數(shù)可以指定畫布大小,像素,單位為英寸。 | plt.figure | figsize:(float, float)。畫布大小,單位為英寸。默認(6.4, 4.8)<p>dpi:float:粒度,每英寸有多少個點。默認100<p>facecolor:背景顏色,默認與rcParams["figure.facecolor"]一致為白色。</p> |
| figure.add_subplot() | 創(chuàng)建并選中子圖,可以指定子圖的行數(shù),列數(shù),與選中圖片編號。 | figure.add_subplot | |
| fig, axs = plt.subplots(nrows=1, ncols=1, sharex=False, sharey=False) | 一次創(chuàng)建多個子圖;可以直接以返回值設(shè)置對應(yīng)的子圖??捎糜谔娲厦娴?行 | plt.subplots | nrows,ncols:subplot的行列數(shù)量。<p>sharex,sharey:bool or {'none', 'all', 'row', 'col'}設(shè)置x軸和Y軸是否共用。<p><b>返回值:</b>fig:figure的值;axs:子圖的唯一值,以array的形式返回。array的組成形式構(gòu)成與nrows,ncols一致</p> |
2.添加畫布內(nèi)容
| 函數(shù)名稱 | 函數(shù)作用 | 函數(shù)說明連接 | 主要參數(shù)解釋 |
|---|---|---|---|
| plt.plot(x,y,ls,lw,lable,color) | 根據(jù)x,y數(shù)據(jù)繪制直線、曲線、標記點,ls為線型linestyle,lw為線寬linewidth,lable為標簽文本內(nèi)容,color為顏色。 | plot | x:x軸值;<p>y:Y軸值。可以為一維數(shù)據(jù),但個數(shù)需要與X軸數(shù)量一致。也可以為二維數(shù)據(jù)<p>fmt:顯示格式。<p>ls:線的形式{'-', '--', '-.', ':', '', (offset, on-off-seq), ...}<p>lw:線的寬度,float.<p>lable:要顯示的Object<p>color:線的顏色</p> |
| plt. scatter(x, y, c, marker, label, color) | 繪制散點圖:x、y為相同長度的序列,c為單個顏色字符或顏色序列,marker為標記的樣式,默認的是'o',label為標簽文本內(nèi)容,color為顏色 | scatter | |
| plt. bar(x, height, width, bottom) | 繪制條形圖 | bar | x:x軸的數(shù)據(jù),float或者array數(shù)據(jù);<p>height:豎條的高度,float或array形式<p> width:豎條的寬度, <p>bottom:和Y軸相交的底部值</p> |
| plt. pie(x, explode, labels, autopct, shadow = False, startangle) | 繪制餅圖 | pie | |
| plt. stem(x, y, linefmt, markerfmt, use_line_collection) | 繪制stem圖 | stem | |
| plt.title(string) | 在當前圖形中添加標題,可以指定標題的名稱、位置、顏色、字體大小等參數(shù)。 | title | |
| plt.xlabel(string) | 在當前圖形中添加x軸名稱,可以指定位置、顏色、字體大小等參數(shù)。 | xlabel | |
| plt.ylabel(string) | 在當前圖形中添加y軸名稱,可以指定位置、顏色、字體大小等參數(shù)。 | ylabel | |
| plt.xlim(xmin,xmax) | 指定當前圖形x軸的范圍,只能確定一個數(shù)值區(qū)間,而無法使用字符串標識。 | xlim | |
| plt.ylim(ymin,ymax) | 指定當前圖形y軸的范圍,只能確定一個數(shù)值區(qū)間,而無法使用字符串標識。 | ylim | |
| plt.xticks() | 指定x軸刻度的數(shù)目與取值。 | xticks | |
| plt.yticks() | 指定y軸刻度的數(shù)目與取值。 | yticks | |
| plt.legend(loc='best') | 指定當前圖形的圖例,可以指定圖例的大小、位置、標簽。 | legend | loc:str 默認在參數(shù)里設(shè)置: rcParams["legend.loc"] (默認為: 'best') 可選參數(shù):'best','upper right','upper left','lower left','lower right','right','center left','center right','lower center','upper center','center' |
3.保存與展示圖形
| 函數(shù)名稱 | 函數(shù)作用 | 函數(shù)說明連接 | 主要參數(shù)解釋 |
|---|---|---|---|
| plt.savafig(fname) | 保存繪制的圖片,可以指定圖片的分辨率、邊緣的顏色等參數(shù)。 | savafig | fname:保存的文件名或者文件操作對象。文件保存格式默認為png,在rcParams["savefig.format"]里設(shè)置。當前支持的格式為:'png', 'pdf', 'svg', 'ps' |
| plt.show() | 在本機顯示圖形。 | show |