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

Google Colab中matplotlib绘制散点图如何正常显示x轴数值

问题根因

x轴位置出现黑条是标签重叠+配置未生效共同导致的:

  • 数据集日期条目多,默认x轴会渲染全部日期标签,文字完全挤压重叠后就会显示为黑块
  • plt.rcParams画布尺寸配置写在了plt.scatter()之后,配置不会作用到已经生成的画布上,设置的大尺寸画布没有生效
  • 末尾的plt.show未加括号,没有正确触发画布渲染流程
修复方案

调整配置顺序、将日期列转为标准时间格式、增加x轴标签防重叠配置,修复后可运行代码如下:

import matplotlib.pyplot as plt
import pandas as pd
import matplotlib.dates as mdates
from google.colab import drive
drive.mount('/content/drive')

# 画布尺寸配置必须放在绘图逻辑前才能生效
plt.rcParams["figure.figsize"] = (20, 8)

weather_data = '/content/drive/MyDrive/Austin Weather Data/austin_weather.csv'
weather = pd.read_csv(weather_data)
# 将Date列转为标准日期格式,避免matplotlib按普通字符串逐值渲染
weather['Date'] = pd.to_datetime(weather['Date'])

x = weather['Date']
y = weather['TempAvgF']

plt.scatter(x, y, s=10)
# 旋转x轴标签避免文字重叠
plt.xticks(rotation=45)
# 设置x轴标签显示间隔,示例为每3个月展示一个标签
plt.gca().xaxis.set_major_locator(mdates.MonthLocator(interval=3))
# 自动调整布局,避免标签被画布边缘截断
plt.tight_layout()
# 正确调用渲染方法,注意补充括号
plt.show()
可选调整参数
  • 若觉得x轴标签仍过密,可将MonthLocator(interval=3)中的interval数值调大,比如设置为6即每半年显示一个标签
  • figure.figsize的宽高数值可按需调整,(20,8)是Colab环境下可读性较好的默认尺寸
  • 散点大小可通过plt.scatter()的s参数调整,数据量较大时建议把s设为更小值,显示效果更清晰
  • plt.xticks(rotation=45)控制标签旋转角度,若不习惯斜向标签可将数值改为90,实现垂直显示

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 02:24:21