如何使用Python 進行數據可視化

微信公衆號:碼農充電站pro
我的主頁:https://codeshellme.github.iohtml

在進行數據分析的時候,常常須要將數據進行可視化,以方便咱們對數據的認識和理解。python

0,Matplotlib 簡介

Matplotlib 是一個可視化工具包,可讓咱們使用Python 來可視化數據。git

Matplotlib

這裏有一些官方資源你能夠點擊查看:github

不少更高級的繪圖庫,也都是基於Matplotlib,好比seabornHoloViewsggplot 等。算法

在使用 Matplotlib 時,常常須要用到 pyplot 模塊,用下面代碼引入:shell

import matplotlib.pyplot as plt

下文中,都用plt 來代指pyplotapi

說明:
這裏咱們只介紹幾種簡單的圖,更多其它的圖,能夠查看官方手冊。
下面的每一個函數,只介紹了最簡單的用法,其它更多的參數能夠查看手冊。數組

1,散點圖

plt.scatter 函數用於繪製散點圖。函數原型:微信

scatter(x, y, s = None, c = None, marker = None)

參數含義:函數

  • x, y:分別表示點的橫縱座標。x, y 能夠是單個點座標,也能夠是一組點座標。
  • s:表示點的大小。
  • c:表示點的顏色。
  • marker:表示點的形狀,可選的值見這裏,好比 marker 的值爲x, o, s等。

以下代碼,畫了三個點:

# 三個點的座標分別是:
#   (2, 5) 
#   (3,6)
#   (3, 5)
plt.scatter([2, 3, 3], [5, 6, 5], marker='o')
plt.show() # 展現圖

畫出的散點圖以下:

在這裏插入圖片描述

2,折線圖

plt.plot 函數用於繪製折線圖。函數原型:

plot(x, y)

參數 xy分別表示點的橫縱座標,通常是一組點座標。

好比下面表格表明5 次數學考試成績:

次數 1 2 3 4 5
成績 89 78 92 79 86

將上面表格數據,繪製成折線圖,代碼以下:

x = [1, 2, 3, 4, 5]
y = [89, 78, 92, 79, 86]
plt.plot(x, y)
plt.show()

畫出的折線圖以下:

在這裏插入圖片描述

3,直方圖

直方圖用於描述數據的分佈狀況

plt.hist 函數用於繪製直方圖。函數原型:

plt.hist(x, bins=None)

參數x是一個一維數組,bins 能夠理解爲矩形的個數,默認是10

假以下面是一次數學考試的成績,全班共50 名同窗:

在這裏插入圖片描述
將全部同窗的成績畫成直方圖,代碼以下:

scores = [
    96, 89, 95, 91, 94, 95, 92, 98, 95, 93,
    93, 96, 94, 94, 98, 92, 88, 90, 88, 98,
    84, 89, 87, 84, 94, 82, 83, 95, 93, 79,
    84, 91, 86, 91, 81, 89, 77, 81, 77, 70,
    66, 93, 90, 87, 79, 83, 86, 90, 93, 79,
    ]
plt.hist(scores)
plt.show()

畫出來的直方圖以下,橫座標爲成績區間,縱座標爲人數:

在這裏插入圖片描述

經過該直方圖,能夠直觀的看出來每一個成績區間的人數。

4,條形圖

plt.bar 函數用於繪製條形圖。函數原型:

plt.bar(x, y, width = 0.8)

參數x, y 均是一個數組,x 是橫座標,表示數據類別;y 是縱座標,表示每一個類別的頻度。參數width 表示長條的寬度。

好比下表是一位同窗的期中考試的各科成績:

在這裏插入圖片描述

咱們將這位同窗的成績單畫成條形圖,代碼以下:

# 每一個科目分別用字母表示
subjects = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I']
scores = [96, 89, 85, 91, 75, 90, 88, 79, 89]
plt.bar(subjects, scores)
plt.show()

畫出的條形圖以下:

在這裏插入圖片描述

5,餅圖

餅圖經常使用於表示個體佔整體的佔比狀況。

plt.pie 函數用於繪製餅圖。函數原型:

plt.pie(x, labels=None)

參數x是一個數組,表示一組數據,labels 用於描述每一個數據的含義。

好比下表是某個公司某年每一個季度的收入:

在這裏插入圖片描述

咱們能夠用餅圖分析出每一個季度佔整年收入的佔比,代碼以下:

# 表示每一個季度
quarters = ['1', '2', '3', '4']
incomes = [56, 89, 75, 91]
plt.pie(incomes, labels=quarters)
plt.show()

畫出的餅圖以下:

在這裏插入圖片描述

(本節完。)


推薦閱讀:

決策樹算法-理論篇-如何計算信息純度

決策樹算法-實戰篇-鳶尾花及波士頓房價預測

樸素貝葉斯分類-理論篇-如何經過幾率解決分類問題

樸素貝葉斯分類-實戰篇-如何進行文本分類


歡迎關注做者公衆號,獲取更多技術乾貨。

碼農充電站pro

相關文章
相關標籤/搜索