📅  最后修改于: 2023-12-03 15:22:37.759000             🧑  作者: Mango
在数据分析中,我们常常需要通过图表的形式来展示数据。其中,分布图是一种常用的图表类型,可以让我们更好地了解数据的分布情况。 在Python中,有多种方式来绘制分布图。下面我将为大家介绍几种常见的分布图及其绘制方法。
直方图是用柱形图的方式来表示数值频数分布情况的图表。横轴代表数值区间,纵轴代表该区间内的频数或频率。
import matplotlib.pyplot as plt
import numpy as np
# 生成随机数据
data = np.random.randn(1000)
# 绘制直方图
plt.hist(data, bins=30, density=True, color='g', alpha=0.5)
# 设置图表相关属性
plt.title('Histogram')
plt.xlabel('Value')
plt.ylabel('Frequency')
# 显示图表
plt.show()
上述代码首先生成了1000个随机数,然后使用plt.hist()
函数绘制直方图,bins
参数表示将数据分成的区间数量,density
参数表示是否进行频率规范化,color
参数和alpha
参数分别表示柱体颜色和透明度。之后,我们设置了图表的标题和坐标轴标签,并调用plt.show()
函数显示图表。运行上述代码,我们可以得到如下的直方图:
密度图是通过核密度估计来展示数据分布的一种图表,横轴代表数值区间,纵轴代表概率密度。
import seaborn as sns
import numpy as np
# 生成随机数据
data = np.random.randn(1000)
# 绘制密度图
sns.kdeplot(data)
# 设置图表相关属性
plt.title('Density plot')
plt.xlabel('Value')
plt.ylabel('Density')
# 显示图表
plt.show()
上述代码首先生成了1000个随机数,然后使用sns.kdeplot()
函数绘制密度图。之后,我们设置了图表的标题和坐标轴标签,并调用plt.show()
函数显示图表。运行上述代码,我们可以得到如下的密度图:
箱线图是一种展示数据分布情况和异常值的图表。图表中,箱子代表数据的中位数及四分位范围,触须表示数据的总范围,异常值则表示超过范围的数据。
import seaborn as sns
import numpy as np
# 生成随机数据
data = np.random.randn(100)
# 绘制箱线图
sns.boxplot(data)
# 设置图表相关属性
plt.title('Box plot')
plt.xlabel('Value')
# 显示图表
plt.show()
上述代码首先生成了100个随机数,然后使用sns.boxplot()
函数绘制箱线图。之后,我们设置了图表的标题和坐标轴标签,并调用plt.show()
函数显示图表。运行上述代码,我们可以得到如下的箱线图:
统计密度图是密度图和箱线图的结合体,它可以同时展示数据分布情况和异常值。
import seaborn as sns
import numpy as np
# 生成随机数据
data = np.random.randn(100)
# 绘制统计密度图
sns.violinplot(data)
# 设置图表相关属性
plt.title('Violin plot')
plt.xlabel('Value')
# 显示图表
plt.show()
上述代码首先生成了100个随机数,然后使用sns.violinplot()
函数绘制统计密度图。之后,我们设置了图表的标题和坐标轴标签,并调用plt.show()
函数显示图表。运行上述代码,我们可以得到如下的统计密度图:
以上便是四种常见的分布图及其绘制方法。除了上述绘制方法外,还有其他方式可以生成分布图。在实际使用中,我们可以根据数据的特点和需要选择合适的绘制方法。