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

如何修改Python pyplot箱线图图例为4项,匹配按合规性设置的自定义颜色

你可以通过matplotlib.patches.Patch手动创建自定义图例项,替换原有默认图例即可,具体操作如下:

首先在代码开头导入Patch类:

from matplotlib.patches import Patch

删除你原有代码里的bp.legend(handles=bp.legend_.legendHandles, labels=['V_01', 'V_02'])行,在修改完所有箱线图颜色的代码后,添加如下自定义图例的代码即可:

# 先获取未修改的V01、V02默认填充色,这里取B组未被改动的箱线图颜色,你也可以直接手动指定颜色值
normal_v1_color = bp.artists[2].get_facecolor()
normal_v2_color = bp.artists[3].get_facecolor()

# 手动创建四个对应图例元素
custom_handles = [
    # 正常V01
    Patch(facecolor=normal_v1_color, edgecolor='black', linewidth=2, label='V_01'),
    # 正常V02
    Patch(facecolor=normal_v2_color, edgecolor='black', linewidth=2, label='V_02'),
    # 合规低于66%的V01
    Patch(facecolor='#D1DBE6', edgecolor='black', linewidth=2, label='V_01 with less 66% agreement'),
    # 合规低于66%的V02
    Patch(facecolor='#EFDBD1', edgecolor='black', linewidth=2, label='V_02 with less 66% agreement')
]

# 替换原有图例,字体大小可根据你的图的尺寸调整
bp.legend(handles=custom_handles, fontsize=40)

如果你的实际场景中所有V01、V02的箱线图都被改色了,直接手动给normal_v1_color和normal_v2_color赋值对应的颜色值即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 17:24:03