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

Matplotlib绘图如何设置X轴仅显示1、2、3三个整数刻度

解决方法

你的原有代码只设置了X轴刻度的旋转角度,没有指定刻度显示位置,matplotlib会按默认规则自动生成刻度,很容易出现多余的非整数刻度。只需要显式指定X轴的刻度位置即可解决问题,不需要改动其他绘图逻辑,手动传入你需要显示的刻度列表就能强制X轴只渲染1、2、3三个整数刻度。

直接把你代码里原来的plt.xticks(rotation=90)替换成指定刻度值的版本即可,修改后的完整代码如下:

fig = plt.figure(figsize=(6,7))
ax = fig.add_subplot()
plt.title('Number of Passengers by Class', size=18)
plt.bar([1, 2, 3], [ttick, ftick, stick], width=.5)
ax.set_xlabel('Pclass', size=15)
ax.set_ylabel('Count', size=15)
# 强制X轴仅在1、2、3位置显示刻度,保留90度旋转设置
plt.xticks([1, 2, 3], rotation=90)
plt.grid()
plt.show()

可选加固方案

如果遇到特殊场景下matplotlib自动篡改刻度格式的情况,可以引入ticker模块强制锁定刻度位置和整数格式:

  1. 先在代码开头导入对应模块:
    from matplotlib import ticker
    
  2. 在设置X轴的部分加一行固定刻度的代码:
    ax.xaxis.set_major_locator(ticker.FixedLocator([1, 2, 3]))
    

这个方案会彻底把X轴主刻度锁定在你指定的三个位置,不会出现任何额外刻度或者非整数格式。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.08 16:15:17