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

如何修复Matplotlib绘制多组直方图时出现的透明度重叠问题

解决直方图重叠区域颜色融合问题的方案

1. 核心优化方法

  • 统一调整两组直方图的透明度:当前第一组数据alpha设为1(完全不透明),会完全遮挡下层的第二组数据,建议两组都设置为0.5~0.6的透明度,保证重叠区域可以自然叠加显色。
  • 增加柱子边界区分:给hist参数添加edgecolor='white',用细白边区分不同柱子的边界,避免重叠后完全糊成一片。
  • 可选调整直方图类型:添加histtype='stepfilled'参数,采用带填充的阶梯型直方图,重叠区域的层级感会比默认填充样式更清晰。

2. 适配配色方案推荐

以下几组配色对比度适中、低饱和度,适合重叠直方图场景:

  • 经典科研配色:#1f77b4(柔和深蓝) + #ff7f0e(暖橙),是matplotlib官方默认的前两位配色,重叠后呈现自然的紫褐色,辨识度高。
  • 马卡龙柔和配色:#a8d1ff(浅蓝) + #ffc3a0(浅橙),饱和度更低,视觉更柔和,适合报告类可视化。
  • 同色系渐变配色:#2c7fb8(深海蓝) + #7fcdbb(浅青蓝),适合展示同类别下的不同子集,视觉统一性强。

3. 修改后代码示例

plt.rcParams["figure.figsize"] = [12, 8]
plt.rcParams["figure.autolayout"] = True

# 选择配色
color0 = '#1f77b4'
color1 = '#ff7f0e'
alpha_val = 0.6

ax0_1 = plt.subplot(121)
_,bins,_ = ax0_1.hist(filtered_0,alpha=alpha_val,color=color0,bins=15,label='All apples', edgecolor='white')
ax0_1.hist(filtered_1,alpha=alpha_val,color=color1,bins=bins,label='Less than two apples', edgecolor='white')
ax0_1.set_title('Condition 0 vs Condition 1: '+'{}'.format(apple_data),fontsize=14)
ax0_1.set_xlabel('{}'.format(apple_data),fontsize=13)
ax0_1.set_ylabel('Frequency',fontsize=13)
ax0_1.grid(axis='y',linewidth=0.4)
ax0_1.tick_params(axis='x',labelsize=13)
ax0_1.tick_params(axis='y',labelsize=13)
ax0_1.legend()


ax0_1_norm = plt.subplot(122)
_,bins,_ = ax0_1_norm.hist(filtered_0,alpha=alpha_val,color=color0,bins=15,label='All apples',density=True, edgecolor='white')
ax0_1_norm.hist(filtered_1,alpha=alpha_val,color=color1,bins=bins,label='Less than two apples',density=True, edgecolor='white')
ax0_1_norm.set_title('Condition 0 vs Condition 1: '+'{} - Normalized'.format(apple_data),fontsize=14)
ax0_1_norm.set_xlabel('{}'.format(apple_data),fontsize=13)
ax0_1_norm.set_ylabel('Frequency (Normalized)',fontsize=13)
ax0_1_norm.legend() 
ax0_1_norm.grid(axis='y',linewidth=0.4)
ax0_1_norm.tick_params(axis='x',labelsize=13)
ax0_1_norm.tick_params(axis='y',labelsize=13)
plt.tight_layout(pad=0.5)
plt.show()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 05:06:03