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

Matplotlib X轴标签消失问题:如何修复Jupyter Notebook显示异常?

解决Jupyter Notebook中Matplotlib/Pandas Plot X轴标签消失的问题

我来帮你搞定这个X轴标签消失的问题!这种情况在使用Pandas的plot()方法时很常见,通常是几个小细节导致的,下面给你几种可行的修复方案:

方案1:确认year列是否为普通数据列(而非索引)

有时候我们会把年份设为DataFrame的索引,这时候指定x='year'就找不到对应的列了,自然不会显示标签。你可以先检查一下:

# 查看数据结构,确认year是列还是索引
print(yearly_average[-20:].info())

如果year是索引,先重置索引把它变回普通列:

# 重置索引,将year从索引转为列
filtered_data = yearly_average[-20:].reset_index()
# 再绘图
filtered_data.plot(x='year', y='rating', figsize=(15,10), grid=True)

方案2:显式设置X轴标签

即使year是正确的列,Pandas的plot()方法有时候会默认隐藏X轴标签(尤其是在某些版本中),这时候我们可以手动获取绘图的Axes对象,强制设置标签:

import matplotlib.pyplot as plt

# 绘图并获取Axes对象
ax = yearly_average[-20:].plot(x='year', y='rating', figsize=(15,10), grid=True)
# 显式设置X轴标签文本
ax.set_xlabel('Year')
# 在Jupyter中确保图表渲染显示
plt.show()

方案3:检查year列的数据类型

如果year列的数据类型是object(字符串类型),可能会导致绘图时识别异常,你可以先转换为数值类型:

# 转换year列为整数类型(如果是字符串格式的年份)
yearly_average['year'] = yearly_average['year'].astype(int)
# 再执行绘图代码
yearly_average[-20:].plot(x='year', y='rating', figsize=(15,10), grid=True)

你可以先试试方案1,这是最常见的原因,不行再依次尝试其他方案~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 03:22:57