You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python箱线图无法显示中位数标签与标题,修改后还出现语法错误

Python箱线图问题解决方案

解决重复绘图+添加标题与中位数标签

原代码生成两个图,核心原因是重复调用绘图函数或plt.show(),以下是修正后的完整代码,可实现单图输出、标题添加、中位数标签标注:

import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

# 替换为你的研究数据
data = pd.DataFrame({
    '实验组': np.random.normal(75, 9, 120),
    '对照组': np.random.normal(68, 8, 120),
    '空白组': np.random.normal(62, 7, 120)
})

# 创建单一画布,避免多图生成
fig, ax = plt.subplots(figsize=(8, 6))
# 绘制箱线图,绑定到ax对象
box_plot = ax.boxplot(data.values, labels=data.columns, patch_artist=True)

# 添加图表标题
ax.set_title('不同组别数据分布箱线图', fontsize=14, pad=20)

# 遍历添加中位数标签
for median_line in box_plot['medians']:
    # 获取中位数的坐标
    median_x = median_line.get_xdata()[0]
    median_y = median_line.get_ydata()[0]
    # 标注中位数数值,保留两位小数
    ax.text(median_x, median_y, f'{median_y:.2f}', ha='center', va='bottom', fontsize=10)

# 仅调用一次,输出单图
plt.show()

排查第三行语法错误

如果修改后第三行报错,优先检查这几点:

  • 导入语句是否完整:比如第三行如果是数据定义,要确保已经导入pandas/numpy(即前两行的import语句没有遗漏或拼写错误)
  • 变量/函数名拼写:比如pd.DataFrame是否写成了pd.dataframe(Python大小写敏感)
  • 符号配对:比如括号、引号是否闭合,逗号是否漏加
  • 缩进问题:第三行如果是代码块内的语句,要确保缩进与上一行一致

内容的提问来源于stack exchange,提问作者Trin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 02:55:13