Jupyter中matplotlib绘制DataFrame图时解决x轴重叠、图表过小问题
pandas时间序列绘图尺寸与x轴标签问题解决方案
调整图表尺寸
直接在plot()方法中传入figsize参数即可自定义画布大小,参数格式为(宽度, 高度),单位为英寸:
import matplotlib.pyplot as plt # 示例:设置画布宽12英寸、高6英寸 ax = table['Temp'].plot(figsize=(12, 6))
解决x轴时间标签重叠
autofmt_xdate()不生效通常是调用时机错误,可直接使用更稳定的手动配置方案:
- 用
plt.xticks()直接指定标签旋转角度与对齐方式 - 调用
tight_layout()自动调整边距,避免旋转后的标签被截断
# x轴标签旋转45度,右对齐适配旋转角度 plt.xticks(rotation=45, ha='right') # 自动调整画布元素边距,防止标签、标题被截断 plt.tight_layout() plt.show()
如果你的数据时间精度高(如示例中的毫秒级数据),仅旋转标签依然存在拥挤问题,可主动设置x轴刻度间隔与显示格式:
import matplotlib.dates as mdates # 设置x轴主刻度每10秒显示一个,可根据数据密度调整interval值 ax.xaxis.set_major_locator(mdates.SecondLocator(interval=10)) # 设置刻度标签显示格式为 时:分:秒,可按需自定义格式 ax.xaxis.set_major_formatter(mdates.DateFormatter('%H:%M:%S'))
内容的提问来源于stack exchange,提问作者NicoCaldo
相关产品推荐
相关产品推荐

