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

如何用ggplot叠加绘制F1赛事所有车手的单圈位置变化曲线?

F1赛事单圈位置变化曲线绘制指导

以下是实现所有车手位置曲线叠加、颜色编码及标注的核心参数/命令指导:

  • 数据过滤调整:移除代码中code == "HAM"的过滤条件,仅保留raceId == 1074,确保获取该赛事所有车手的圈数数据。
  • 颜色编码设置:在ggplot()的aes()映射中添加color = code(或数据集里代表车手的唯一标识字段,如姓名、driverId),让每条曲线按车手自动分配不同颜色。示例映射逻辑:aes(lap, position, color = code)
  • 曲线绘制:保留geom_line()即可,ggplot会自动基于颜色映射生成多条区分颜色的曲线。
  • 车手标注优化:
    • 若要在曲线末端标注车手代码,可使用geom_text()配合数据过滤,仅在最后一圈添加标签:geom_text(data = . %>% filter(lap == max(lap)), aes(label = code))
    • 若出现标签重叠,可使用ggrepel包的geom_text_repel()替代geom_text(),自动调整标签位置避免遮挡(需先执行library(ggrepel)加载包)
  • Y轴逻辑优化:F1赛事中1代表第一名,建议添加scale_y_reverse()将Y轴倒序,让排名靠前的位置显示在图表上方,更符合直观认知。
  • 图例调整:若需要优化图例展示,可通过theme(legend.position = "bottom")(或"right"/"top")调整位置,也可用guides(color = guide_legend(title = "车手代码"))修改图例标题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 03:23:20