You need to enable JavaScript to run this app. matplotlib绘制箱线图修改y轴刻度字体大小时标签消失问题问询
优惠活动
大模型
产品
解决方案
定价
更多

matplotlib绘制箱线图修改y轴刻度字体大小时标签消失问题问询

问题原因

调用ax.set_yticklabels(labels=ax.get_yticklabels(), Fontsize=8)时y轴标签消失的核心原因是:matplotlib在图表未完成最终渲染前,调用get_yticklabels()获取到的是无实际文本内容的占位对象,将其作为标签回设后自然无内容显示。同时你代码中参数Fontsize首字母大写属于拼写错误,部分版本matplotlib会忽略该参数不生效。


正确修改方案

方案1:通过tick_params批量设置(最推荐)

不需要手动处理标签内容,直接批量修改y轴刻度标签的字体大小,替换原有ax.set_yticklabels行即可:

ax.tick_params(axis='y', labelsize=8)

如果需要同时调整x轴、刻度线样式、颜色等属性,也可在该方法中增加对应参数实现。

方案2:先获取实际刻度值再设置标签

如果确实需要通过set_yticklabels配置标签,要先拿到y轴的实际刻度值生成标签内容:

# 获取y轴刻度的实际数值
y_ticks = ax.get_yticks()
# 用数值转字符串作为标签设置,同时指定字体大小
ax.set_yticklabels(labels=[str(t) for t in y_ticks], fontsize=8)

方案3:遍历标签单独配置

如果需要对单个刻度标签做差异化调整,可以遍历所有y轴标签单独设置字体大小:

for label in ax.get_yticklabels():
    label.set_fontsize(8)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 03:30:00