首頁 > 軟體

Python中不同圖表的資料視覺化的實現

2022-08-08 22:02:50

資料視覺化是以圖形格式呈現資料。它通過以簡單易懂的格式彙總和呈現大量資料,幫助人們理解資料的重要性,並有助於清晰有效地傳達資訊。

考慮這個給定的資料集,我們將為其繪製不同的圖表:

用於分析和呈現資料的不同型別的圖表

 1.直方圖

直方圖表示特定現象發生的頻率,這些現象位於特定的數值範圍內,並以連續和固定的間隔排列。

在下面的程式碼中繪製直方圖Age, Income, Sales。因此,輸出中的這些圖顯示了每個屬性的每個唯一值的頻率。

# 匯入 pandas 和 matplotlib
import pandas as pd
import matplotlib.pyplot as plt

# 建立上面給出的表的二維陣列
data = [['E001', 'M', 34, 123, 'Normal', 350],
		['E002', 'F', 40, 114, 'Overweight', 450],
		['E003', 'F', 37, 135, 'Obesity', 169],
		['E004', 'M', 30, 139, 'Underweight', 189],
		['E005', 'F', 44, 117, 'Underweight', 183],
		['E006', 'M', 36, 121, 'Normal', 80],
		['E007', 'M', 32, 133, 'Obesity', 166],
		['E008', 'F', 26, 140, 'Normal', 120],
		['E009', 'M', 32, 133, 'Normal', 75],
		['E010', 'M', 36, 133, 'Underweight', 40] ]

# 使用上述資料陣列建立的資料框
df = pd.DataFrame(data, columns = ['EMPID', 'Gender',
									'Age', 'Sales',
									'BMI', 'Income'] )

# 為數值資料建立直方圖
df.hist()

# show plot
plt.show()

輸出:

2. 柱形圖

柱形圖用於顯示不同屬性之間的比較,或者它可以顯示專案隨時間的比較。

# 此處使用之前程式碼的資料框

# 繪製數值條形圖,將顯示所有 3 個年齡、收入、銷售額之間的比較
df.plot.bar()

# 在 2 個屬性之間繪製
plt.bar(df['Age'], df['Sales'])
plt.xlabel("Age")
plt.ylabel("Sales")
plt.show()

輸出:

3. 箱線圖

箱線圖是基於 minimum, first quartile, median, third quartile, and maximum. 術語“箱線圖”來自這樣一個事實,即圖形看起來像一個矩形,線條從頂部和底部延伸。由於延伸線,這種型別的圖有時被稱為盒須圖。

# 對於資料框的每個數位屬性
df.plot.box()

# 單個屬性箱線圖
plt.boxplot(df['Income'])
plt.show()

輸出:

4、餅圖

餅圖顯示一個靜態數位以及類別如何代表整體的一部分。餅圖以百分比表示數位,所有段的總和需要等於 100%。

plt.pie(df['Age'], labels = {"A", "B", "C",
							"D", "E", "F",
							"G", "H", "I", "J"},
							
autopct ='% 1.1f %%', shadow = True)
plt.show()

plt.pie(df['Income'], labels = {"A", "B", "C",
								"D", "E", "F",
								"G", "H", "I", "J"},
								
autopct ='% 1.1f %%', shadow = True)
plt.show()

plt.pie(df['Sales'], labels = {"A", "B", "C",
							"D", "E", "F",
							"G", "H", "I", "J"},
autopct ='% 1.1f %%', shadow = True)
plt.show()

輸出:

5、散點圖

散點圖顯示了兩個不同變數之間的關係,它可以揭示分佈趨勢。當有許多不同的資料點,並且您想突出資料集中的相似性時,應該使用它。這在查詢異常值和了解資料分佈時很有用。

# 收入和年齡之間的散點圖
plt.scatter(df['income'], df['age'])
plt.show()

# 收入和銷售額之間的散點圖
plt.scatter(df['income'], df['sales'])
plt.show()

# 銷售額和年齡之間的散點圖
plt.scatter(df['sales'], df['age'])
plt.show()

輸出 :

以上就是Python中不同圖表的資料視覺化的實現的詳細內容,更多關於Python圖表資料視覺化的資料請關注it145.com其它相關文章!


IT145.com E-mail:sddin#qq.com