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

如何使用seaborn绘制各车辆对应人员数量的折线图

正确实现方案

你需要先完成分组统计得到每辆车对应的id计数,再将统计结果传入seaborn绘图,不要直接在绘图函数内写未基于DataFrame的统计逻辑。

具体实现代码

import seaborn as sns
import matplotlib.pyplot as plt

# 1. 按car分组统计每个分组下的id数量
car_id_count = df.groupby('car', as_index=False)['id'].count().rename(columns={'id': 'id_total'})

# 2. 基于统计结果绘制折线图,加marker可以更清晰展示每个车辆对应的数值点
sns.lineplot(x='car', y='id_total', data=car_id_count, marker='o')
plt.show()

结果说明

统计得到的car_id_count完全匹配你预期的数值:

  • car=1时,id_total=2
  • car=2时,id_total=3

原代码错误原因

你之前写的y='car'.count()是直接对Python字符串'car'做长度计算,返回固定值3,完全没有读取DataFrame内的数据,自然无法得到正确结果。

补充提示:如果car列是离散分类值,建议绘图前先将car列转为字符串类型car_id_count['car'] = car_id_count['car'].astype(str),避免x轴自动生成不存在的中间数值刻度。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 17:36:18