日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

Python中不同圖表的數(shù)據(jù)可視化的實(shí)現(xiàn)_python

作者:海擁 ? 更新時(shí)間: 2022-10-03 編程語言

數(shù)據(jù)可視化是以圖形格式呈現(xiàn)數(shù)據(jù)。它通過以簡單易懂的格式匯總和呈現(xiàn)大量數(shù)據(jù),幫助人們理解數(shù)據(jù)的重要性,并有助于清晰有效地傳達(dá)信息。

考慮這個(gè)給定的數(shù)據(jù)集,我們將為其繪制不同的圖表:

用于分析和呈現(xiàn)數(shù)據(jù)的不同類型的圖表

?1.直方圖

直方圖表示特定現(xiàn)象發(fā)生的頻率,這些現(xiàn)象位于特定的數(shù)值范圍內(nèi),并以連續(xù)和固定的間隔排列。

在下面的代碼中繪制直方圖Age, Income, Sales。因此,輸出中的這些圖顯示了每個(gè)屬性的每個(gè)唯一值的頻率。

# 導(dǎo)入 pandas 和 matplotlib
import pandas as pd
import matplotlib.pyplot as plt

# 創(chuàng)建上面給出的表的二維數(shù)組
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] ]

# 使用上述數(shù)據(jù)數(shù)組創(chuàng)建的數(shù)據(jù)框
df = pd.DataFrame(data, columns = ['EMPID', 'Gender',
									'Age', 'Sales',
									'BMI', 'Income'] )

# 為數(shù)值數(shù)據(jù)創(chuàng)建直方圖
df.hist()

# show plot
plt.show()

輸出:

2. 柱形圖

柱形圖用于顯示不同屬性之間的比較,或者它可以顯示項(xiàng)目隨時(shí)間的比較。

# 此處使用之前代碼的數(shù)據(jù)框

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

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

輸出:

3. 箱線圖

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

# 對(duì)于數(shù)據(jù)框的每個(gè)數(shù)字屬性
df.plot.box()

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

輸出:

4、餅圖

餅圖顯示一個(gè)靜態(tài)數(shù)字以及類別如何代表整體的一部分。餅圖以百分比表示數(shù)字,所有段的總和需要等于 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、散點(diǎn)圖

散點(diǎn)圖顯示了兩個(gè)不同變量之間的關(guān)系,它可以揭示分布趨勢(shì)。當(dāng)有許多不同的數(shù)據(jù)點(diǎn),并且您想突出數(shù)據(jù)集中的相似性時(shí),應(yīng)該使用它。這在查找異常值和了解數(shù)據(jù)分布時(shí)很有用。

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

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

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

輸出 :

原文鏈接:https://juejin.cn/post/7129345806313717768

欄目分類
最近更新