如何在高度图中添加每个epoch的准确率百分比标注
在高度图中添加各epoch对应准确率百分比的实现方法
- 核心实现逻辑非常直接:在原有绘制高度图的流程中,定位到每个epoch对应图形元素的坐标位置,调用绘图库自带的文本标注接口写入对应准确率值即可,不需要复杂的图像变换。
以常用的Matplotlib库为例的操作步骤
- 先确认手头的训练数据结构:准备两个平行的序列,一个存储每个epoch对应的x轴定位坐标,另一个存储对应epoch的准确率数值(通常为0-1区间的小数)
- 在原有绘制高度图(柱状图/连续填充高度图)的代码执行完成后,遍历所有数据点添加文本标注,可参考以下代码片段:
# 遍历每个epoch的坐标位置与对应准确率 for epoch_x, acc_value in zip(epoch_x_coords, acc_values): plt.text( x=epoch_x, # 文本水平位置与epoch的x轴位置对齐 y=对应图形元素的顶部高度 + 0.02, # 向上小幅偏移,避免和图形内容重叠 s=f"{acc_value*100:.1f}%", # 把小数准确率转为带1位小数的百分比格式 ha="center", # 文本水平居中,刚好落在对应元素正上方 fontsize=10 ) - 如果目标效果是把准确率文本印在色块内部(而非图形上方),可以把文本Y轴位置调整到色块的垂直中心,同时把文本颜色改成与背景强对比的白色,即可匹配示例的目标效果。
实操注意事项
- 文本Y轴的偏移量要和你的坐标轴量程匹配:如果准确率范围是0-1,向上偏移0.01-0.03的距离视觉效果最舒服,既不会飘得过高脱离对应元素,也不会被图形遮挡
- 所有文本标注操作要在完成坐标轴范围调整、样式设置之后执行,避免文本被坐标轴边界裁切
- 不需要为了加标注重跑完整绘图流程,直接在原有代码的基础上补充标注逻辑即可,减少不必要的运行开销
内容的提问来源于stack exchange,提问作者Chowdhury Joy
相关产品推荐
相关产品推荐

