文章目录

  • 专栏导读
  • 1、Matplotlib箱线图boxplot()基本语法
  • 2、Matplotlib箱线图boxplot()举例异常值
  • 3、Matplotlib箱线图boxplot()样式定义
  • 4、Matplotlib箱线图boxplot()举例带缺口
  • 5、Matplotlib箱线图boxplot()举例横向显示
  • 6、Matplotlib箱线图boxplot()举例显示平均值
  • 7、Matplotlib箱线图boxplot()举例隐藏异常值
  • 8、Matplotlib箱线图boxplot()举例异常值的样式
  • 9、Matplotlib箱线图boxplot()举例箱子的样式
  • 11、Matplotlib箱线图boxplot()举例标签说明

专栏导读

✍ 作者简介:i阿极,CSDN 数据分析领域优质创作者,专注于分享python数据分析领域知识。

本文录入于《数据分析之道》,本专栏针对大学生、初级数据分析工程师精心打造,对python基础知识点逐一击破,不断学习,提升自我。
订阅后,可以阅读《数据分析之道》中全部文章内容,包含python基础语法、数据结构和文件操作,科学计算,实现文件内容操作,实现数据可视化等等。
✍ 其他专栏:《数据分析案例》 ,《机器学习案例》

如果觉得文章不错或能帮助到你学习,可以点赞收藏评论+关注哦!

如果有小伙伴需要数据集和学习交流,文章下方有交流学习区!一起学习进步!

1、Matplotlib箱线图boxplot()基本语法

箱线图(Box Plot)是一种用于显示数据分布和异常值的可视化方法。它展示了一组数据的五个统计量:最小值(minimum)、第一四分位数(lower quartile)、中位数(median)、第三四分位数(upper quartile)和最大值(maximum)。箱线图还可以显示异常值(outliers)和数据的分布情况。

Matplotlib库提供了绘制箱线图的函数,其基本语法如下:

plt.boxplot(x, notch=None, sym=None, vert=None, whis=None, positions=None, widths=None, patch_artist=None, meanline=None, showmeans=None, showcaps=None, showbox=None,showfliers=None, boxprops=None, labels=None, flierprops=None, medianprops=None,meanprops=None, capprops=None, whiskerprops=None)

下面是一些常用参数的解释:

  • x: 必需参数,要绘制箱线图的数据,可以是一个数组、一个或多个列表、或一个二维数组。
  • notch: 可选参数,控制箱体是否带缺口,默认值为False。
  • sym: 可选参数,指定异常值的标记符号,默认值为None。
  • vert: 可选参数,控制箱线图的方向,可以是垂直(True)或水平(False),默认值为True。
  • whis: 可选参数,指定箱线图的须的长度,表示数据的分布范围,默认值为1.5。
  • showfliers: 可选参数,控制是否显示异常值,默认值为True。
  • boxprops: 可选参数,用于设置箱体的属性,如颜色、填充等。
  • labels: 可选参数,用于设置箱线图的标签。

下面是一个简单的示例,演示如何使用箱线图绘制一组数据的分布:

import matplotlib.pyplot as pltimport numpy as np# 生成随机数据np.random.seed(0)data = np.random.randn(100)# 绘制箱线图plt.boxplot(data)# 添加标签和标题plt.xlabel('Data')plt.ylabel('Values')plt.title('Box Plot')# 显示图表plt.show()

下面是一个示例,演示如何绘制多个箱线图:

import matplotlib.pyplot as pltimport numpy as np# 生成随机数据np.random.seed(0)data1 = np.random.randn(100)data2 = np.random.randn(100)data3 = np.random.randn(100)# 将数据组织为二维数组data = [data1, data2, data3]# 绘制多个箱线图plt.boxplot(data)# 添加标签和标题plt.xlabel('Data')plt.ylabel('Values')plt.title('Multiple Box Plots')# 显示图表plt.show()

2、Matplotlib箱线图boxplot()举例异常值

在箱线图中,异常值是指位于数据分布之外的值,它们与其他数据点相比明显偏离。异常值可以通过箱线图的须和离群点来表示。

下面是一个示例,演示如何在箱线图中标记异常值:

import matplotlib.pyplot as pltimport numpy as np# 生成带有异常值的随机数据np.random.seed(0)data = np.concatenate([np.random.normal(0, 1, 100), np.array([5, -5, 8, -8])])# 绘制箱线图plt.boxplot(data, showfliers=True)# 添加标签和标题plt.xlabel('Data')plt.ylabel('Values')plt.title('Box Plot with Outliers')# 显示图表plt.show()

在这个示例中,我们生成了一个包含正态分布数据和异常值的随机数据集data。异常值包括值为5、-5、8和-8的数据点。
然后,我们使用plt.boxplot()函数并将showfliers参数设置为True,以显示箱线图中的异常值。
最后,我们添加了标签和标题,以便更好地说明图表的含义。

3、Matplotlib箱线图boxplot()样式定义

boxplot()函数提供了一系列参数,可以用于自定义箱线图的样式。

import matplotlib.pyplot as pltimport numpy as np# Generate random datanp.random.seed(0)data = np.random.randn(100)# Define boxplot stylesboxprops = dict(facecolor='lightblue')flierprops = dict(marker='o', markerfacecolor='green', markersize=5, linestyle='none')# Create boxplotplt.boxplot(data, patch_artist=True, boxprops=boxprops, flierprops=flierprops)# Add labels and titleplt.xlabel('Data')plt.ylabel('Values')plt.title('Customized Box Plot')# Show the plotplt.show()

4、Matplotlib箱线图boxplot()举例带缺口

当绘制箱线图时,你可以使用notch=True参数来为箱体添加一个缺口,用于表示数据的置信区间。缺口的宽度取决于数据的分布。下面是一个带有缺口的箱线图示例:

import matplotlib.pyplot as pltimport numpy as np# 生成随机数据np.random.seed(0)data = np.random.randn(100)# 绘制带有缺口的箱线图plt.boxplot(data, notch=True)# 添加标签和标题plt.xlabel('Data')plt.ylabel('Values')plt.title('Box Plot with Notch')# 显示图表plt.show()

在这个示例中,我们生成了一个随机数据集data。然后,我们使用plt.boxplot()函数并将notch=True作为参数传递,以绘制带有缺口的箱线图。
最后,我们添加了标签和标题,以便更好地说明图表的含义。

5、Matplotlib箱线图boxplot()举例横向显示

当你想要绘制横向的箱线图时,你可以使用vert=False参数将箱线图的方向设置为水平方向。这样,箱体和须将水平放置,而不是垂直放置。下面是一个横向显示的箱线图示例:

import matplotlib.pyplot as pltimport numpy as np# 生成随机数据np.random.seed(0)data = np.random.randn(100)# 绘制横向箱线图plt.boxplot(data, vert=False)# 添加标签和标题plt.xlabel('Values')plt.ylabel('Data')plt.title('Horizontal Box Plot')# 显示图表plt.show()

在这个示例中,我们生成了一个随机数据集data。然后,我们使用plt.boxplot()函数并将vert=False作为参数传递,以绘制横向的箱线图。
最后,我们添加了标签和标题,以便更好地说明图表的含义。

6、Matplotlib箱线图boxplot()举例显示平均值

要在箱线图上显示平均值,你可以使用meanline=True参数来绘制平均线。下面是一个示例:

import matplotlib.pyplot as pltimport numpy as np# 生成随机数据np.random.seed(0)data = np.random.randn(100)# 绘制箱线图并显示平均值plt.boxplot(data, meanline=True, showmeans=True)# 添加标签和标题plt.xlabel('Data')plt.ylabel('Values')plt.title('Box Plot with Mean')# 显示图表plt.show()

在这个示例中,我们生成了一个随机数据集data。然后,我们使用plt.boxplot()函数并将meanline=True和showmeans=True作为参数传递,以绘制带有平均线的箱线图。
最后,我们添加了标签和标题,以便更好地说明图表的含义。

7、Matplotlib箱线图boxplot()举例隐藏异常值

要在箱线图中隐藏异常值,你可以使用showfliers=False参数。下面是一个示例:

import matplotlib.pyplot as pltimport numpy as np# 生成随机数据np.random.seed(0)data = np.random.randn(100)# 绘制箱线图并隐藏异常值plt.boxplot(data, showfliers=False)# 添加标签和标题plt.xlabel('Data')plt.ylabel('Values')plt.title('Box Plot without Outliers')# 显示图表plt.show()

8、Matplotlib箱线图boxplot()举例异常值的样式

要自定义箱线图中异常值的样式,你可以使用flierprops参数来指定异常值的属性。下面是一个示例:

import matplotlib.pyplot as pltimport numpy as np# 生成随机数据np.random.seed(0)data = np.random.randn(100)outliers = [2.5, -3.8, 3.2]# 自定义异常值# 绘制箱线图并自定义异常值样式plt.boxplot(data, flierprops={'marker': 'x', 'markerfacecolor': 'red', 'markersize': 8, 'linestyle': 'none'},notch=True, showfliers=True)# 添加自定义异常值plt.scatter(np.full(len(outliers), 1), outliers, marker='x', color='red')# 添加标签和标题plt.xlabel('Data')plt.ylabel('Values')plt.title('Box Plot with Custom Outliers')# 显示图表plt.show()

在这个示例中,我们生成了一个随机数据集data,并定义了一些自定义的异常值outliers。然后,我们使用plt.boxplot()函数并通过flierprops参数传递一个字典来自定义异常值的样式,包括marker、markerfacecolor、markersize和linestyle。
为了显示自定义的异常值,我们使用plt.scatter()函数在相应位置上绘制了红色的”x”标记。
最后,我们添加了标签和标题,以便更好地说明图表的含义。

9、Matplotlib箱线图boxplot()举例箱子的样式

要自定义箱线图中箱子的样式,你可以使用boxprops参数来指定箱子的属性。下面是一个示例:

import matplotlib.pyplot as pltimport numpy as np# 生成随机数据np.random.seed(0)data = np.random.randn(100)# 绘制箱线图并自定义箱子样式plt.boxplot(data, boxprops={'color': 'green', 'linewidth': 2, 'linestyle': '--'},notch=True, showfliers=True)# 添加标签和标题plt.xlabel('Data')plt.ylabel('Values')plt.title('Box Plot with Custom Box Style')# 显示图表plt.show()

在这个示例中,我们生成了一个随机数据集data。然后,我们使用plt.boxplot()函数并通过boxprops参数传递一个字典来自定义箱子的样式,包括color、linewidth和linestyle。
在这里,我们将箱子的颜色设置为绿色,线宽设置为2,线型设置为虚线。
最后,我们添加了标签和标题,以便更好地说明图表的含义。

11、Matplotlib箱线图boxplot()举例标签说明

要为箱线图添加标签说明,你可以使用labels参数来指定每个数据组的标签。下面是一个示例:

import matplotlib.pyplot as pltimport numpy as np# 生成随机数据np.random.seed(0)data1 = np.random.randn(100)data2 = np.random.randn(100) + 2data3 = np.random.randn(100) - 2# 绘制多个箱线图并添加标签说明plt.boxplot([data1, data2, data3], labels=['Group 1', 'Group 2', 'Group 3'])# 添加标签和标题plt.xlabel('Groups')plt.ylabel('Values')plt.title('Box Plot with Labels')# 显示图表plt.show()

在这个示例中,我们生成了三组随机数据:data1、data2和data3。然后,我们使用plt.boxplot()函数传递这三组数据,并通过labels参数指定每个数据组的标签。
最后,我们添加了标签和标题,以便更好地说明图表的含义。


文章下方有交流学习区!一起学习进步!
首发CSDN博客,创作不易,如果觉得文章不错,可以点赞收藏评论
你的支持和鼓励是我创作的动力❗❗❗