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

调整Seaborn Pairplot图例透明度/颜色 解决低alpha下图例标识看不清问题

问题原因

你在plot_kws中设置的散点透明度alpha=0.05会被Seaborn同步应用到图例的标记元素上,因此图例中的彩色圆点也继承了极低的透明度,导致难以看清。

解决方法

在现有代码最后新增代码单独修改图例标记的透明度即可,无需调整原图散点的显示效果,完整可运行代码参考如下:

grid = sns.pairplot(data=vst_wgcna, hue='cluster', kind="reg",
                palette=palette, corner=True,
           plot_kws={ 'scatter_kws': {'alpha': 0.05}})

grid.map_offdiag(plot_unity,  plot_kws={ 'scatter_kws': {'alpha': 0.1}})
grid._legend.set_bbox_to_anchor((0.81, 0.5))

# 新增部分:遍历修改所有图例标记的透明度
for handle in grid._legend.legendHandles:
    # 将图例圆点透明度设为1(完全不透明),可根据视觉需求调整数值
    handle.set_alpha(1)
    # 可选:如果觉得图例标记太小,可加下行调整尺寸,数值越大标记越大
    # handle.set_sizes([100])

# 注意:若使用matplotlib 3.7及以上版本,legendHandles属性已更名,遍历代码替换为下方案即可
# for handle in grid._legend.legend_handles:
#     handle.set_alpha(1)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 02:06:02