Python 數(shù)據(jù)可視化之Matplotlib詳解
在深入研究這些庫之前,首先,我們需要一個數(shù)據(jù)庫來繪制數(shù)據(jù)。我們將在本完整教程中使用 tips database。讓我們討論一下這個數(shù)據(jù)庫的簡介。
使用的數(shù)據(jù)庫
tips 數(shù)據(jù)庫
tips 數(shù)據(jù)庫是20世紀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ù)可視化庫,它構建在 NumPy 數(shù)組上。它由散點圖、線圖、直方圖等各種圖組成。 Matplotlib 提供了很大的靈活性。
要安裝此庫,請在終端中輸入以下命令。
pip install matplotlib

安裝 Matplotlib 后,讓我們看看使用這個庫最常用的繪圖。
散點圖
散點圖用于觀察變量之間的關系,并用點來表示它們之間的關系。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 添加標題
plt.title("Scatter Plot")
# 設置 X 和 Y 標簽
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添加標題
plt.title("Scatter Plot")
# 設置 X 和 Y 標簽
plt.xlabel('Day')
plt.ylabel('Tip')
plt.colorbar()
plt.show()

折線圖
折線圖用于表示不同軸上兩個數(shù)據(jù) X 和 Y 之間的關系。它是使用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添加標題
plt.title("Scatter Plot")
# 設置 X 和 Y 標簽
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")
# 設置 X 和 Y 標簽
plt.xlabel('Day')
plt.ylabel('Tip')
# 添加圖例
plt.show()
輸出:

直方圖
直方圖基本上是用來在一些基團的形式來表示數(shù)據(jù)。它是一種條形圖,其中 X 軸表示 bin 范圍,而 Y 軸提供有關頻率的信息。的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()
輸出:

以上是關于 Matplotlib 使用 Python 進行數(shù)據(jù)可視化的全部示例,下一節(jié)我們來談談 Seaborn
總結
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內(nèi)容!
相關文章
日常整理python執(zhí)行系統(tǒng)命令的常見方法(全)
本文是小編日常整理的些關于python執(zhí)行系統(tǒng)命令常見的方法,比較全面,特此通過腳本之家這個平臺把此篇文章分享給大家供大家參考2015-10-10
Python之numpy.random.seed()和numpy.random.RandomState()區(qū)別及說明
這篇文章主要介紹了Python之numpy.random.seed()和numpy.random.RandomState()區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2017-10-10
分析語音數(shù)據(jù)增強及python實現(xiàn)
數(shù)據(jù)增強是一種生成合成數(shù)據(jù)的方法,即通過調(diào)整原始樣本來創(chuàng)建新樣本。這樣我們就可獲得大量的數(shù)據(jù)。這不僅增加了數(shù)據(jù)集的大小,還提供了單個樣本的多個變體,這有助于我們的機器學習模型避免過度擬合2021-06-06
Python腳本實現(xiàn)抓取指定網(wǎng)站上的所有圖片
對于開發(fā)者、數(shù)據(jù)分析師以及研究人員而言,從網(wǎng)頁中提取有價值的信息是一項至關重要的技能,本文將詳細介紹如何使用Python編寫一個腳本來自動抓取指定網(wǎng)站上的所有圖片,需要的可以參考下2024-10-10
Django模板報TemplateDoesNotExist異常(親測可行)
這篇文章主要介紹了Django模板報TemplateDoesNotExist異常(親測可行),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12

