Matplotlib 如何只显示boxplot中最值的异常值

Matplotlib 如何只显示boxplot中最值的异常值

在本文中,我们将介绍使用Matplotlib绘制箱线图(boxplot)时如何只显示最值的异常值(fliers)。

在Matplotlib绘制箱线图时,通常会将落在箱线之外的点视为异常值,用小点标出。然而,在有些情况下,我们可能仅关心最值的异常值。比如我们用箱线图展示某个城市一周内的气温变化数据,我们仅关心某一天的最低温度和最高温度是否达到了特定的阈值,这时候只显示最值的异常值即可。

那么,如何实现这一功能呢?我们可以通过修改boxplot函数的showfliers参数来实现。将showfliers参数的值设为False,即可隐藏箱线图中除了最值之外的异常值。例如:

import matplotlib.pyplot as plt
import numpy as np

# 生成一组随机数据
np.random.seed(123)
data = [np.random.normal(0, std, 100) for std in range(1, 4)]

# 绘制普通箱线图
fig, ax = plt.subplots()
ax.boxplot(data)

# 仅显示最值的异常值
ax.boxplot(data, showfliers=False)

plt.show()
Python

上述代码中,我们生成了一组随机数据,并使用Matplotlib绘制了普通的箱线图

接着,我们将绘制参数修改为showfliers=False,来仅显示最值的异常值。

可以看到,箱线图中除了最值之外的异常值都被隐藏了。

此外,我们还可以通过修改boxplot函数其他的参数,来进一步定制我们的箱线图。例如,我们可以通过修改whis参数来调整箱线图中箱体边缘的位置,whis参数的默认值为1.5,即箱体边缘到须的距离为1.5倍的箱体高度。将whis参数设置为0.5,可以将箱体边缘向内移动一半的箱体高度。例如:

fig, ax = plt.subplots()
ax.boxplot(data, showfliers=False, whis=0.5)

plt.show()
Python

可以看到,箱体边缘已经向内移动了一半的箱体高度。

阅读更多:Matplotlib 教程

总结

本文介绍了如何使用Matplotlib绘制箱线图时仅显示最值的异常值。只需将boxplot函数的showfliers参数设置为False,即可隐藏箱线图中除了最值之外的异常值。此外,我们还可以根据需要修改boxplot函数的其他参数,进一步定制我们的箱线图,以满足不同的需求。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册