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

如何按城市分组生成多子图直方图并设置对应城市标题

实现代码

你可以提前创建指定行列的子图画布,再遍历城市分组逐个绘图并配置标题:

import matplotlib.pyplot as plt

# 自定义子图布局:此处设置为10行5列,可根据实际城市数量调整行列参数
fig, axes = plt.subplots(nrows=10, ncols=5, figsize=(20, 40), tight_layout=True)
# 把子图数组从二维转为一维,方便遍历匹配分组
axes = axes.flatten()

# 遍历每个城市的分组数据和对应子图
for idx, (city_name, city_data) in enumerate(data.groupby("CityName")):
    # 绘制当前城市的行程时长直方图
    city_data.hist(column="CarTripDuration", ax=axes[idx])
    # 将子图标题设置为对应城市名称
    axes[idx].set_title(city_name)
    # 可选:统一设置坐标轴标签
    axes[idx].set_xlabel("汽车行程时长")
    axes[idx].set_ylabel("出现次数")

# 若城市总数少于子图总数(10*5=50),隐藏多余的空白子图
for empty_ax in axes[data["CityName"].nunique():]:
    empty_ax.axis("off")

plt.show()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 11:27:03