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

如何将误差棒与红色横条重叠的左侧须线改为白色?

解决误差棒与条形重叠部分的可读性问题

需求:将误差棒须线中与红色水平条重叠的左侧部分改为白色,提升图表可读性。尝试给黑色须线添加白色边缘,效果不符合预期。

修改后的代码

import matplotlib.pyplot as plt
cm = 1/2.54 # 英寸-厘米转换

fig, axes = plt.subplots(
        num = 'main',
        nrows = 2,
        ncols = 1,
        sharex=True,
        dpi = 300,
        figsize=(16.5*cm, 5*cm)
    )

axes[0].set_xlim(0,100)
axes[0].set_ylim(-1,1)

# 先绘制完整的黑色误差棒
axes[0].errorbar(
    x = 30,
    y = 0,
    xerr = [[4], [65]],
    fmt = 'none',
    capsize = 2,
    ecolor = 'black',
    elinewidth = 1,
)

# 绘制红色水平条,遮挡误差棒的重叠区域
axes[0].barh(
    y = 0,
    width = 30,
    height = 1.5,
    align='center',
    color = 'red',
    edgecolor = 'black'
)

# 用白色线条覆盖条形上的误差棒重叠部分(从26到30)
axes[0].plot([30-4, 30], [0, 0], color='white', linewidth=1)

plt.show()

实现思路

  1. 调整绘制顺序:先画完整的黑色误差棒,再画红色条形,让条形自然遮挡住误差棒的重叠段(26-30)。
  2. 精准补画白色线段:针对被遮挡的重叠区域,用白色线条重新绘制这段误差棒,确保红色条形上的须线清晰可见。
  3. 这种方法比添加白色边缘更精准,直接解决重叠部分的可读性问题,操作简单且效果符合预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 06:35:35