Python 數(shù)據(jù)可視化之Matplotlib詳解
在深入研究這些庫之前,首先,我們需要一個數(shù)據(jù)庫來繪制數(shù)據(jù)。我們將在本完整教程中使用 tips database。讓我們討論一下這個數(shù)據(jù)庫的簡介。
使用的數(shù)據(jù)庫
tips 數(shù)據(jù)庫
tips 數(shù)據(jù)庫是20世紀(jì)90年代初期顧客在餐廳的兩個半月的小費記錄。它包含 6 列,例如 total_bill、tip、sex、smoker、day、time、size。
您可以從這里下載 tips 數(shù)據(jù)庫。
例子:
import pandas as pd # 讀取數(shù)據(jù)庫 data = pd.read_csv("tips.csv") # 打印前 10 行 print(data.head(10))
輸出:
Matplotlib
Matplotlib 是一個易于使用的低級數(shù)據(jù)可視化庫,它構(gòu)建在 NumPy 數(shù)組上。它由散點圖、線圖、直方圖等各種圖組成。 Matplotlib 提供了很大的靈活性。
要安裝此庫,請在終端中輸入以下命令。
pip install matplotlib
安裝 Matplotlib 后,讓我們看看使用這個庫最常用的繪圖。
散點圖
散點圖用于觀察變量之間的關(guān)系,并用點來表示它們之間的關(guān)系。matplotlib 庫中的scatter()方法用于繪制散點圖。
例子:
import pandas as pd import matplotlib.pyplot as plt # 讀取數(shù)據(jù)庫 data = pd.read_csv("tips.csv") # day 對 tip 的散點圖 plt.scatter(data['day'], data['tip']) # 為 Plot 添加標(biāo)題 plt.title("Scatter Plot") # 設(shè)置 X 和 Y 標(biāo)簽 plt.xlabel('Day') plt.ylabel('Tip') plt.show()
輸出:
如果我們可以添加顏色并更改點的大小,則此圖會更有意義。我們可以通過分別使用 scatter 函數(shù)的c 和 s參數(shù)來做到這一點。我們還可以使用colorbar()方法顯示顏色條。
import pandas as pd import matplotlib.pyplot as plt # 讀取數(shù)據(jù)庫 data = pd.read_csv("tips.csv") # day對tip的散點圖 plt.scatter(data['day'], data['tip'], c=data['size'], s=data['total_bill']) # 為Plot添加標(biāo)題 plt.title("Scatter Plot") # 設(shè)置 X 和 Y 標(biāo)簽 plt.xlabel('Day') plt.ylabel('Tip') plt.colorbar() plt.show()
折線圖
折線圖用于表示不同軸上兩個數(shù)據(jù) X 和 Y 之間的關(guān)系。它是使用plot() 函數(shù)繪制的。讓我們看看下面的例子。
例子:
import pandas as pd import matplotlib.pyplot as plt # 讀取數(shù)據(jù)庫 data = pd.read_csv("tips.csv") # day對tip的折線圖 plt.plot(data['tip']) plt.plot(data['size']) # 為Plot添加標(biāo)題 plt.title("Scatter Plot") # 設(shè)置 X 和 Y 標(biāo)簽 plt.xlabel('Day') plt.ylabel('Tip') plt.show()
輸出:
條形圖
柱狀圖或叫條形圖是表示與長度和高度的矩形條數(shù)據(jù)的類別是正比于它們所代表的值的圖。它可以使用bar()方法創(chuàng)建。
例子:
import pandas as pd import matplotlib.pyplot as plt # 讀取數(shù)據(jù)庫 data = pd.read_csv("tips.csv") # day對tip的條形圖 plt.bar(data['day'], data['tip']) plt.title("Bar Chart") # 設(shè)置 X 和 Y 標(biāo)簽 plt.xlabel('Day') plt.ylabel('Tip') # 添加圖例 plt.show()
輸出:
直方圖
直方圖基本上是用來在一些基團(tuán)的形式來表示數(shù)據(jù)。它是一種條形圖,其中 X 軸表示 bin 范圍,而 Y 軸提供有關(guān)頻率的信息。的HIST()函數(shù)用于計算和創(chuàng)建直方圖。在直方圖中,如果我們傳遞分類數(shù)據(jù),那么它將自動計算該數(shù)據(jù)的頻率,即每個值出現(xiàn)的頻率。
例子:
import pandas as pd import matplotlib.pyplot as plt # 讀取數(shù)據(jù)庫 data = pd.read_csv("tips.csv") # total_bill直方圖 plt.hist(data['total_bill']) plt.title("Histogram") # 添加圖例 plt.show()
輸出:
以上是關(guān)于 Matplotlib 使用 Python 進(jìn)行數(shù)據(jù)可視化的全部示例,下一節(jié)我們來談?wù)?Seaborn
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
- Python數(shù)據(jù)可視化教程之Matplotlib實現(xiàn)各種圖表實例
- python數(shù)據(jù)可視化之matplotlib.pyplot基礎(chǔ)以及折線圖
- Python利用matplotlib模塊數(shù)據(jù)可視化繪制3D圖
- Python數(shù)據(jù)可視化之使用matplotlib繪制簡單圖表
- Python數(shù)據(jù)分析應(yīng)用之Matplotlib數(shù)據(jù)可視化詳情
- python數(shù)據(jù)可視化matplotlib繪制折線圖示例
- Python數(shù)據(jù)分析之Matplotlib數(shù)據(jù)可視化
相關(guān)文章
python進(jìn)階教程之循環(huán)相關(guān)函數(shù)range、enumerate、zip
這篇文章主要介紹了python進(jìn)階教程之循環(huán)相關(guān)函數(shù)range、enumerate、zip,在使用循環(huán)程序經(jīng)常要配合這些函數(shù)來完成循環(huán),需要的朋友可以參考下2014-08-08基于CentOS搭建Python Django環(huán)境過程解析
這篇文章主要介紹了基于CentOS搭建Python Django環(huán)境過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-08-08淺談Keras的Sequential與PyTorch的Sequential的區(qū)別
這篇文章主要介紹了淺談Keras的Sequential與PyTorch的Sequential的區(qū)別,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06