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

matplotlib绘制柱状图仅显示柱形 不显示坐标轴标签、刻度与标题

问题原因

标签、刻度、标题不显示的核心原因是坐标轴位置参数设置错误:
你代码里的ax = fig.add_axes([0,0,1,1])把坐标轴区域设置成了完全占满整个画布。add_axes接收的四个参数依次为「坐标轴区域距画布左侧距离、距画布底部距离、区域宽度、区域高度」,取值为0-1的比例值。当你把左右、上下边距都设为0时,坐标轴外侧的刻度、轴标签、标题全部被裁到了画布可视范围之外,最终只能看到中间的柱状图形。

另外你代码里y轴标签的Responsi是拼写错误,正确拼写为Response。

修复方案

两种常用修复方式,选其一即可:

  • 手动调整add_axes的边距参数,给外围标注留出足够显示空间,比如将参数改为[0.15, 0.15, 0.75, 0.75]
  • 直接使用plt.subplots()创建画布与坐标轴,matplotlib会自动预留合适的边距,不需要手动计算位置,更适合日常使用

修复后的完整可运行代码:

import matplotlib.pyplot as plt

# 自动适配边距的写法,推荐使用
fig, ax = plt.subplots()

# 如果要坚持用add_axes写法,替换成下面两行即可
# fig = plt.figure()
# ax = fig.add_axes([0.15, 0.15, 0.75, 0.75])

packets = ['1.', '2', '3', '4', '5']
testTime = [2.3, 1.7, 3.5, 2.9, 1.2]
plt.bar(packets, testTime)
plt.ylabel('Response time (Seconds.milliseconds)')
plt.xlabel('Packets')
plt.title("Response Time")
plt.show()

运行后就能正常看到x/y轴刻度、轴标签和顶部标题了。


内容的提问来源于stack exchange,提问作者Muhammad Junaid Khalid

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 11:18:26