Python干货!不同图表的数据可视化

本文介绍了Python进行数据可视化的几种常见图表,包括直方图、柱形图、箱形图、饼图和散点图。通过这些图表,可以帮助理解数据的分布、比较不同属性、识别异常值以及展示数据之间的关系。每种图表都有其特定的用途,如直方图用于表示频率,柱形图用于比较,箱形图展示统计数据,饼图表示整体构成,散点图揭示变量间的关联。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据可视化是以图形格式表示数据。它通过以简单易懂的格式汇总和呈现大量数据来帮助人们了解数据的重要性,并有助于清晰有效地传达信息。

考虑给定的数据集,我们将为其绘制不同的图表:

1.直方图:表示特定现象发生的频率,这些现象在特定的值范围内并以连续和固定的间隔排列。

在下面的代码中,绘制了直方图,输出中的这些图显示了每个属性的每个唯一值的频率。

# import pandas and matplotlib

import pandas as pd

import matplotlib.pyplot as plt

# create 2D array of table given above

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] ]

# dataframe created with

# the above data array

df = pd.DataFrame(data, columns = ['EMPID', 'Gender',

                                   'Age', 'Sales',

                                   'BMI', 'Income'] )

# create histogram for numeric data

df.hist()

# show plot

plt.show()

输出:

2.柱形图:用于显示不同属性之间的比较,或者可以显示随时间变化的项目比较。

# Dataframe of previous code is used here

# Plot the bar chart for numeric values

# a comparison will be shown between

# all 3 age, income, sales

df.plot.bar()

# plot between 2 attributes

plt.bar(df['Age'], df['Sales'])

plt.xlabel("Age")

plt.ylabel("Sales")

plt.show()

输出方式:

3.箱形图:基于的统计数据的图形表示最大值、最小值等

# For each numeric attribute of dataframe

df.plot.box()

# individual attribute box plot

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.散点图:散点图显示两个不同变量之间的关系,并且可以显示分布趋势。

当有许多不同的数据点,并且您想突出显示数据集的相似性时,在寻找异常值和了解数据分布时都可以运用

# scatter plot between income and age

plt.scatter(df['income'], df['age'])

plt.show()

# scatter plot between income and sales

plt.scatter(df['income'], df['sales'])

plt.show()

# scatter plot between sales and age

plt.scatter(df['sales'], df['age'])

plt.show()

输出形式:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值