当前位置:数码通 > 软件

Python箱线图值显示在中心

来源于 数码通 2023-09-30 09:02

箱线图是一种统计图,用于显示一组数据的分布情况。在Python中,我们可以使用Matplotlib库来绘制箱线图。默认情况下,箱线图值显示在框的左侧。如果我们想将数值显示在方框的中心,我们可以通过调整Matplotlib库的参数来实现。

1。调整箱线图的数值位置

在Matplotlib库中,可以通过设置相关参数来调整箱线图的值。我们可以使用以下代码将箱线图值居中:

将 matplotlib.pyplot 导入为 plt
将 numpy 导入为 np

# 生成一组样本数据
数据 = np.random.randn(100)

# 绘制箱线图并设置数值位置
Fig, ax = plt.subplots()
bp = ax.boxplot(数据, patch_artist=True)
ax.margins(y=0.1) # 为值留出空间
ax.set_xticklabels(['数据'])

#调整数值位置
对于 bp['boxes'] 中的框:
    box.set_facecolor('浅蓝色')
对于 bp['medians'] 中的中位数:
    中值.set(颜色='红色',线宽=2)
对于 bp['fliers'] 中的传单:
    flier.set(marker='o', color='green')

对于范围内的 i(len(bp['medians'])):
    中位数 = bp['中位数'][i]
    Median_xy = Median.get_xydata()
    中位数_x = 中位数_xy[:, 0]
    中位数_y = 中位数_xy[:, 1]
    ax.plot(median_x,median_y, color='red') # 绘制中线ax.text(median_x[1], np.mean(median_y), f"{np.mean(median_y):.2f}", ha='center', va='center', backgroundcolor='white') #在中心显示数值

# 显示图形
m.smtshopping.cn()

运行上述代码将生成一个箱线图,其值显示在中心。

2。调整箱线图数值位置的原理

箱线图的数值位置调整是通过以下步骤实现的:

  1. 首先,我们使用ax.margins(y=0.1)为值留出一些空间。
  2. 然后,我们使用 ax.text() 函数通过循环箱线图的中位数来显示以中位数上方为中心的值。

通过上述步骤,我们可以将箱线图的值显示在箱线的中心。

3。其他箱线图的调整

除了调整箱线图的数值位置外,我们还可以对箱线图进行其他调整。例如,我们可以设置分箱的颜色、中位数的颜色和线宽、异常值的标记等。下面是调整这些元素的示例代码:

# 绘制箱线图并设置相关参数
Fig, ax = plt.subplots()
bp = ax.boxplot(数据, patch_artist=True)
ax.margins(y=0.1) # 为值留出空间
ax.set_xticklabels(['数据'])

#调整盒子的颜色
对于 bp['boxes'] 中的框:
    box.set_facecolor('浅蓝色')

#调整中位数的颜色和线宽
对于 bp['medians'] 中的中位数:
    中值.set(颜色='红色',线宽=2)

# 调整异常值标志
对于 bp['fliers'] 中的传单:
    flier.set(marker='o', color='green')

# 显示图形
m.smtshopping.cn()

通过修改相应的参数,我们可以自定义箱线图样式,使其更符合我们的需求。

以上就是如何在Python中实现箱线图值的居中显示。通过调整Matplotlib库的参数,我们可以定制各种风格的箱线图,以满足不同的需求。

登录后参与评论