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

如何在Matplotlib中高亮X轴上特定值及其对应标签

在Matplotlib中高亮X轴特定值

直接上可运行的代码,实现你要的效果:

import matplotlib.pyplot as plt

list1 = [1,2,3,4,5,6,7,8,9]  # X轴数值
list2 = [1,2,23,4,5,6,7,8,9] # Y轴数值
list3 = [2,3,6,7]             # 需要高亮的X轴值

# 绘制基础折线图
plt.plot(list1, list2)

# 获取X轴刻度对象与对应数值
xticks = plt.gca().get_xticklabels()
xtick_values = plt.gca().get_xticks()

# 遍历刻度,匹配目标值后设置高亮颜色
for tick, value in zip(xticks, xtick_values):
    if value in list3:
        tick.set_color('red')  # 将符合条件的X轴标签改为红色
        # 可选:同时高亮对应的数据点
        plt.scatter(value, list2[list1.index(value)], color='red', s=50)

plt.show()

关键操作说明:

  • 通过plt.gca().get_xticklabels()和get_xticks()分别获取X轴的标签对象与对应刻度数值
  • 遍历配对的标签和数值,判断是否属于list3,符合条件则修改标签颜色
  • 额外的scatter代码是用来高亮对应的数据点,不需要的话可以直接删除
  • 颜色支持任意Matplotlib可用的颜色值,比如'green'、'orange'等

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 16:19:52