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

如何在Matplotlib分段色条的不同颜色间绘制黑色水平分隔线

解决方法

要在分段色条的颜色块之间添加黑色水平分隔线,你可以直接在颜色条的轴上,针对每个颜色段的边界位置绘制水平线。修改后的完整代码如下:

import matplotlib.pyplot as plt
from matplotlib.cm import ScalarMappable
from matplotlib.colors import BoundaryNorm

plt.plot() # dummy Axes

nmin, N = 0, 11
bounds = [nmin-0.5]+[n+0.5 for n in range(nmin, N)]
norm = BoundaryNorm(bounds, 256)
cm = plt.get_cmap('cool')

cb = plt.colorbar(ScalarMappable(norm, cm), format='%02d', ax=plt.gca())
cb.set_ticks(range(nmin, N))

# 添加黑色水平分隔线
for bound in bounds[1:-1]:
    cb.ax.axhline(bound, color='black', linewidth=1)

plt.show()

关键说明:

  • bounds数组定义了每个颜色段的边界值,其中bounds[1:-1]对应颜色块之间的分隔位置(从0.5到9.5)
  • 使用cb.ax.axhline()在颜色条的轴上绘制水平线,指定颜色为黑色并设置线宽
  • 这样就能在每个相邻颜色块之间生成清晰的黑色分隔线

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 15:50:05