import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
plt.rcParams['font.sans-serif']=['Simhei'] #解決中文顯示問(wèn)題
plt.rcParams['axes.unicode_minus']=False #解決負(fù)數(shù)坐標(biāo)顯示問(wèn)題
matplotlib可視化教程
Python數(shù)據(jù)可視化方法之Seaborn
1化漆、設(shè)置x軸的數(shù)值顯示范圍函數(shù)xlim()
? 函數(shù)功能:設(shè)置x軸的數(shù)值顯示范圍
? 調(diào)用方法:plt.xlim(xmin,xmax)
? 參數(shù)說(shuō)明
? xmin: x軸上的最小值
? xmax: x軸上的最大值
? 同樣的方法可以用在plt.ylim()上
2、函數(shù)xlabel() ——設(shè)置x軸的標(biāo)簽文本
? 函數(shù)功能:設(shè)置x軸的標(biāo)簽文本
? 調(diào)用方法:plt.xlabel(string)
? 參數(shù)說(shuō)明
? string: 標(biāo)簽文本內(nèi)容
? 同樣的方法可以用在plt.ylabel()上
3、函數(shù)grid()——繪制刻度線(xiàn)的網(wǎng)格線(xiàn)
? 函數(shù)功能:繪制刻度線(xiàn)的網(wǎng)格線(xiàn)
? 調(diào)用方法:plt.grid(linestyle = ':', color = 'r')
? 參數(shù)說(shuō)明
? linestyle: 網(wǎng)格的線(xiàn)條風(fēng)格
? color: 網(wǎng)格的線(xiàn)條顏色
4与纽、函數(shù)axhline() ——繪制平行于x軸的水平參考線(xiàn)
? 函數(shù)功能:繪制平行于x軸的水平參考線(xiàn)
? 調(diào)用方法:plt.axhline(y=0.0,c='r',ls='--',lw=2)
? 參數(shù)說(shuō)明
? y: 水平參考線(xiàn)的出發(fā)點(diǎn)
? c: 參考線(xiàn)的線(xiàn)條顏色
? ls: 參考線(xiàn)的線(xiàn)條風(fēng)格
? lw: 參考線(xiàn)的線(xiàn)條寬度
? 上面的函數(shù)功能一樣可以用到axvline上
5、函數(shù)axvspan() ——繪制垂直于x軸的參考區(qū)域
? 函數(shù)功能:繪制垂直于x軸的參考區(qū)域
? 調(diào)用方法:plt.axvspan(xmin=1.0,xmax=2.0,facecolor='y',alpha=0.3)
? 參數(shù)說(shuō)明
? xmin: 參考區(qū)域的起始位置
? xmax: 參考區(qū)域的終止位置
? facecolor: 參考區(qū)域的填充顏色
? alpha: 參考區(qū)域的顏色透明度
? 上面的函數(shù)功能一樣可以用到axhspan()上
6、函數(shù)text() ——添加圖形內(nèi)容細(xì)節(jié)的無(wú)指向型注釋文本
? 函數(shù)功能:添加圖形內(nèi)容細(xì)節(jié)的指向型注釋文本
? 調(diào)用方法:plt.text(x,y,string,weight='bold',color='b')
? 參數(shù)說(shuō)明
? x: 注釋文本所在位置橫坐標(biāo)
? y: 注釋文本所在位置縱坐標(biāo)
? string: 注釋文本內(nèi)容
? weight: 注釋文本的粗細(xì)風(fēng)格
? color: 注釋文本的字體顏色
7示惊、函數(shù)title() ——添加圖形內(nèi)容的標(biāo)題
? 函數(shù)功能:添加圖形內(nèi)容細(xì)節(jié)的指向型注釋文本
? 調(diào)用方法:plt.title(string)
? 參數(shù)說(shuō)明
? string: 標(biāo)題內(nèi)容
8、函數(shù)legend() ——圖例
? 函數(shù)功能:添加圖形內(nèi)容細(xì)節(jié)的指向型注釋文本
? 調(diào)用方法:plt.legend(loc='lower left')
? 參數(shù)說(shuō)明
? loc: 圖例在圖中的位置
舉例
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0.05,10,100)
y = np.sin(x)
plt.plot(x,y,c= 'b',label='scatter figure')
plt.legend()
plt.text(3.10,0.09,'sin(x)', weight = 'bold',color= 'b')
plt.title('My first plot')
plt.legend()
多個(gè)統(tǒng)計(jì)圖形的組合展示
fig愉镰,ax=plt.subplots的意思是將plt.subplots()函數(shù)的返回值賦值給fig和ax兩個(gè)變量米罚。
plt.subplots()是一個(gè)函數(shù),返回一個(gè)包含figure和axes對(duì)象的元組丈探,因此录择,使用fig,ax=plt.subplots()將元組分解為fig和ax兩個(gè)變量。
fig,ax = plt.subplots(nrows=2, ncols=2)
axes = ax.flatten()
fig: matplotlib.figure.Figure 對(duì)象
ax:子圖對(duì)象( matplotlib.axes.Axes)或者是他的數(shù)組
ax.flatten()把子圖展開(kāi)賦值給...
import matplotlib.pyplot as plt
import numpy as np
fig,ax = plt.subplots(2,3,figsize = (15,10))
group_month = df.groupby('month')
ax0,ax1 = ax.flatten()
**每月銷(xiāo)售金額**
group_month.order_amount.agg('sum').plot(ax=ax0)
ax0.set_title('每月消費(fèi)金額')
ax0.set_ylabel('消費(fèi)金額')
**每月銷(xiāo)售產(chǎn)品數(shù)**
group_month.order_products.sum().plot(c="g",ax=ax1)
ax1.set_title('每月銷(xiāo)售產(chǎn)品數(shù)')
ax1.set_ylabel('銷(xiāo)售產(chǎn)品數(shù)')