一、Matplotlib庫使用
Matplotlib是一個Python數據可視化庫,可以繪製各種靜態、動態、交互式的圖形,同時支持多種操作系統和繪圖格式。它提供了大量繪圖函數和類,可以繪製一些基本的圖形如折線圖、散點圖、柱狀圖、餅圖等,也能繪製更加複雜的圖形如等高線圖、3D圖形等。
Matplotlib圖庫的官方網站:
https://matplotlib.org/。
1. 折線圖
折線圖是利用數據點按照順序依次與折線連接而成的圖表,用於表示數據的趨勢變化。下面是一個折線圖的代碼示例。
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [6, 7, 8, 9, 10]
plt.plot(x, y)
plt.show()
以上代碼表示輸入兩個列表,然後通過函數plt.plot(x,y)繪製圖表。其中x、y分別為橫、縱坐標軸的數據點。plt.show()用於展示繪製的圖表。
2. 散點圖
散點圖是由多個點組成的圖表,每個點表示一個數據。散點圖一般用於表示兩個變量之間的關係。下面是一個散點圖的代碼示例。
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [6, 7, 8, 9, 10]
plt.scatter(x, y)
plt.show()
以上代碼輸入兩個列表,然後通過函數plt.scatter(x,y)繪製散點圖。同樣的,plt.show()用於展示繪製的圖表。
3. 柱狀圖
柱狀圖是按照數值大小繪製垂直或水平柱形條的圖表,用於比較不同項目或數據之間的大小關係。下面是一個柱狀圖的代碼示例。
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [6, 7, 8, 9, 10]
plt.bar(x, y)
plt.show()
以上代碼輸入兩個列表,然後通過函數plt.bar(x,y)繪製柱狀圖。同樣的,plt.show()用於展示繪製的圖表。
二、Seaborn庫使用
Seaborn是建立在Matplotlib之上的一個Python數據可視化庫,提供了更高級別的界面、繪製函數和數據集接口,使得數據可視化更加簡單、美觀。Seaborn庫對於繪製統計圖表、分布圖表、時間序列圖表等領域,有着比Matplotlib庫更強大的功能。Seaborn圖庫的官方網站:
https://seaborn.pydata.org/。
1. 直方圖
直方圖是按照數值大小將數據分割為若干個區間,然後對區間進行統計並繪製出柱形圖的圖表。下面是一個直方圖的代碼示例。
import seaborn as sns
x = [1, 2, 3, 4, 5]
sns.histplot(x)
plt.show()
以上代碼輸入一個列表,然後通過函數sns.histplot(x)繪製直方圖。同樣的,plt.show()用於展示繪製的圖表。
2. 熱力圖
熱力圖是按照數據矩陣繪製顏色不同的矩形區域,用於呈現數據的密度、分布情況。下面是一個熱力圖的代碼示例。
import seaborn as sns
import numpy as np
x = np.random.rand(5,5)
sns.heatmap(x, cmap='YlGnBu')
plt.show()
以上代碼輸入一個5×5的數組,然後通過函數sns.heatmap(x, cmap=’YlGnBu’)繪製熱力圖。同樣的,plt.show()用於展示繪製的圖表。
3. 點圖
點圖是在二維平面上繪製散點圖或帶有誤差條的點圖。它可以在可視化探索數據的分布時,快速而有效地識別出群組內和群組間的差異。下面是一個點圖的代碼示例。
import seaborn as sns
x = [1,1,1,2,2,2,3,3,3,4,4,4,5,5,5]
y = [1,2,3,1,2,3,1,2,3,1,2,3,1,2,3]
z = [3,4,5,6,7,8,6,5,4,3,2,1,1,2,3]
sns.pointplot(x=x, y=y, hue=z)
plt.show()
以上代碼輸入三個列表,然後通過函數sns.pointplot(x=x, y=y, hue=z)繪製點圖。同樣的,plt.show()用於展示繪製的圖表。
三、Plotly庫使用
Plotly是一個開源的數據可視化庫,對於繪製交互式的圖表有着強大的支持,支持多種前端語言如Python、R、JavaScript等,並且提供多種可視化工具,如Plotly Express、Dash等。Plotly的官方網站:
https://plotly.com/。
1. 餅圖
餅圖是按照數據之間的大小對一個圓形區域進行分割,構成一個扇形的圖表,用於表示數據之間的百分比或者佔比情況。下面是一個餅圖的代碼示例。
import plotly.graph_objects as go
labels = ['Oxygen','Hydrogen','Carbon_Dioxide','Nitrogen']
values = [4500, 2500, 1053, 500]
fig = go.Figure(data=[go.Pie(labels=labels, values=values)])
fig.show()
以上代碼輸入兩個列表,其中labels對應數據的標籤,values對應數據的值。然後通過函數go.Pie(labels=labels, values=values)繪製餅圖。同樣的,fig.show()用於展示繪製的圖表。
2. 3D圖形
3D圖形可以展示三維坐標系中的數據關係。下面是一個3D圖形的代碼示例。
import plotly.graph_objects as go
import numpy as np
x, y, z = np.random.multivariate_normal(np.array([0,0,0]), np.eye(3), 200).transpose()
fig = go.Figure(data=[go.Scatter3d(x=x, y=y, z=z, mode='markers', marker=dict(size=4))])
fig.show()
以上代碼利用numpy庫生成隨機的三維坐標點,然後通過函數go.Scatter3d(x=x, y=y, z=z, mode=’markers’, marker=dict(size=4))繪製3D圖形。同樣的,fig.show()用於展示繪製的圖表。
總結
本文介紹了Matplotlib、Seaborn和Plotly三個Python數據可視化庫的使用,每個庫都能夠完成各種數據圖表的繪製,有着獨特的優勢。Matplotlib提供了豐富的圖表類型和高度靈活的界面,Seaborn強調數據分析和統計圖表的繪製,Plotly則提供交互式和動態的圖表。無論使用哪個數據可視化庫,都可以快速且輕鬆地繪製出所需的數據圖表和可視化結果。
原創文章,作者:IKVB,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/134270.html