Matplotlib常見繪圖繪製(折線圖、散點圖、柱狀圖、直方圖、餅圖)

1 常見圖形種類及意義
  1. 折線圖:以折線的上升或降低來表示統計數量的增減變化的統計圖
    特色:可以顯示數據的變化趨勢,反映事物的變化狀況。(變化)
    api:plt.plot(x, y)html

  2. 散點圖:用兩組數據構成多個座標點,考察座標點的分佈,判斷兩變量之間是否存在某種關聯或總結座標點的分佈模式。
    特色:判斷變量之間是否存在數量關聯趨勢,展現離羣點(分佈規律)
    api:plt.scatter(x, y)python

  3. 柱狀圖:排列在工做表的列或行中的數據能夠繪製到柱狀圖中。
    特色:繪製連離散的數據,可以一眼看出各個數據的大小,比較數據之間的差異。(統計/對比)
    api:plt.bar(x, width, align='center', **kwargs)api

    Parameters:    
     x : 須要傳遞的數據
     width : 柱狀圖的寬度
     align : 每一個柱狀圖的位置對齊方式
         {‘center’, ‘edge’}, optional, default: ‘center’
     **kwargs :
     color:選擇柱狀圖的顏色
  4. 直方圖:由一系列高度不等的縱向條紋或線段表示數據分佈的狀況。 通常用橫軸表示數據範圍,縱軸表示分佈狀況。
    特色:繪製連續性的數據展現一組或者多組數據的分佈情況(統計)
    api:matplotlib.pyplot.hist(x, bins=None)markdown

    Parameters:    
     x : 須要傳遞的數據
     bins : 組距
  5. 餅圖:用於表示不一樣分類的佔比狀況,經過弧度大小來對比各類分類。
    特色:分類數據的佔比狀況(佔比)
    api:plt.pie(x, labels=,autopct=,colors)ide

    Parameters:  
     x:數量,自動算百分比
     labels:每部分名稱
     autopct:佔比顯示指定%1.2f%%
     colors:每部分顏色
2 散點圖繪製

需求:探究房屋面積和房屋價格的關係ui

房屋面積數據:atom

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]
房屋價格數據:spa

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]code

在這裏插入圖片描述

代碼:htm

# 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 柱狀圖繪製

需求-對比每部電影的票房收入
電影數據以下圖所示:
在這裏插入圖片描述

準備數據
[‘雷神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()

參考連接:

​ https://matplotlib.org/index.html

相關文章
相關標籤/搜索