Matplotlib之常見圖形繪製
如果大家一點基礎都沒有移步到:
Matplotlib之HelloWorld
Matplotlib基礎繪圖功能:折線圖為例
本文的學習目標就是掌握常見統計圖以及其意義。Matplotlib能夠繪製
折線圖、散點圖、柱狀圖、直方圖、餅圖。
我們需要知道不同的統計圖的意義,以此來決定選擇哪種統計圖來呈現我們的資料。
一、常見圖形種類及意義
折線圖
:以折線的上升或下降來表示統計數量的增減變化的統計圖
特點:能夠顯示資料的變化趨勢,反映事物的變化情況。(變化)
api:plt。plot(x, y)
散點圖:
用兩組資料構成多個座標點,考察座標點的分佈,判斷兩變數之間是否存在某種關聯或總結座標點的分佈模式。
特點:判斷變數之間是否存在數量關聯趨勢,展示離群點(分佈規律)
api:plt。scatter(x, y)
柱狀圖:
排列在工作表的列或行中的資料可以繪製到柱狀圖中。
特點:繪製連離散的資料,能夠一眼看出各個資料的大小,比較資料之間的差別。(統計/對比)
api:plt。bar(x, width, align=‘center’, **kwargs)
Parameters:
x : 需要傳遞的資料
width : 柱狀圖的寬度
align : 每個柱狀圖的位置對齊方式
{‘center’, ‘edge’}, optional, default: ‘center’
**kwargs :
color:選擇柱狀圖的顏色
直方圖:
由一系列高度不等的縱向條紋或線段表示資料分佈的情況。 一般用橫軸表示資料範圍,縱軸表示分佈情況。
特點:繪製連續性的資料展示一組或者多組資料的分佈狀況(統計)
api:matplotlib。pyplot。hist(x, bins=None)
Parameters:
x : 需要傳遞的資料
bins : 組距
餅圖:
用於表示不同分類的佔比情況,透過弧度大小來對比各種分類。
特點:分類資料的佔比情況(佔比)
api:plt。pie(x, labels=,autopct=,colors)
Parameters:
x:數量,自動算百分比
labels:每部分名稱
autopct:佔比顯示指定%1。2f%%
colors:每部分顏色
二、散點圖繪製
需求:探究房屋面積和房屋價格的關係
房屋面積資料:
x = [225。98, 247。07, 253。14, 457。85, 241。58, 301。01, 20。67, 288。64,
163。56, 120。06, 207。83, 342。75, 147。9 , 53。06, 224。72, 29。51,
21。61, 483。21, 245。25, 399。25, 343。35]
房屋價格資料:
y = [196。63, 203。88, 210。75, 372。74, 202。41, 247。61, 24。9 , 239。34,
140。32, 104。15, 176。84, 288。23, 128。79, 49。64, 191。74, 33。1 ,
30。74, 400。02, 205。35, 330。64, 283。45]
程式碼:
# 0。準備資料
x = [225。98, 247。07, 253。14, 457。85, 241。58, 301。01, 20。67, 288。64,
163。56, 120。06, 207。83, 342。75, 147。9 , 53。06, 224。72, 29。51,
21。61, 483。21, 245。25, 399。25, 343。35]
y = [196。63, 203。88, 210。75, 372。74, 202。41, 247。61, 24。9 , 239。34,
140。32, 104。15, 176。84, 288。23, 128。79, 49。64, 191。74, 33。1 ,
30。74, 400。02, 205。35, 330。64, 283。45]
# 1。建立畫布
plt。figure(figsize=(20, 8), dpi=100)
# 2。繪製散點圖
plt。scatter(x, y)
# 3。顯示影象
plt。show()
三、柱狀圖繪製
需求-對比每部電影的票房收入
電影資料如下圖所示:
準備資料
[‘雷神3:諸神黃昏’,‘正義聯盟’,‘東方快車謀殺案’,‘尋夢環遊記’,‘全球風暴’, ‘降魔傳’,‘追捕’,‘七十七天’,‘密戰’,‘狂獸’,‘其它’]
[73853,57767,22354,15969,14839,8725,8716,8318,7916,6764,52222]
繪製柱狀圖
程式碼:
# 0。準備資料
# 電影名字
movie_name = [‘雷神3:諸神黃昏’,‘正義聯盟’,‘東方快車謀殺案’,‘尋夢環遊記’,‘全球風暴’,‘降魔傳’,‘追捕’,‘七十七天’,‘密戰’,‘狂獸’,‘其它’]
# 橫座標
x = range(len(movie_name))
# 票房資料
y = [73853,57767,22354,15969,14839,8725,8716,8318,7916,6764,52222]
# 1。建立畫布
plt。figure(figsize=(20, 8), dpi=100)
# 2。繪製柱狀圖
plt。bar(x, y, width=0。5, color=[‘b’,‘r’,‘g’,‘y’,‘c’,‘m’,‘y’,‘k’,‘c’,‘g’,‘b’])
# 2。1b修改x軸的刻度顯示
plt。xticks(x, movie_name)
# 2。2 新增網格顯示
plt。grid(linestyle=“——”, alpha=0。5)
# 2。3 新增標題
plt。title(“電影票房收入對比”)
# 3。顯示影象
plt。show()
參考連結:
Python plotting - Matplotlib 3。4。3 documentation
四、總結
折線圖【知道】
能夠顯示資料的變化趨勢,反映事物的變化情況。(變化)
plt。plot()
散點圖【知道】
判斷變數之間是否存在數量關聯趨勢,展示離群點(分佈規律)
plt。scatter()
柱狀圖【知道】
繪製連離散的資料,能夠一眼看出各個資料的大小,比較資料之間的差別。(統計/對比)
plt。bar(x, width, align=“center”)
直方圖【知道】
繪製連續性的資料展示一組或者多組資料的分佈狀況(統計)
plt。hist(x, bins)
餅圖【知道】
用於表示不同分類的佔比情況,透過弧度大小來對比各種分類
plt。pie(x, labels, autopct, colors)
上一篇:學什麼技術好-女生學什麼專業好
下一篇:內心很空洞,無慾無求,無目標?