比赛 STATS 增强需求文档 Demo

1

Expected goals stats

比赛 Stats · Shot map 后的预期进球技术统计

OFFICIAL PRODUCT BASE点位、时段与展开可操作
官方比赛 Stats 顶部
官方 Shot map 与单次射门详情
RaphinhaBarcelona
57'
0.42 0.51 Left foot Open play Saved 11.2m 57' Raphinha Barcelona, Saved, 0.42 xG, 0.51 xGOT

Expected goals stats

Expected goals (xG) ⓘ
1.481.12
1.84
xG on target (xGOT)
1.21
官方 Shots 后续技术统计

黑色比赛头部、Stats 导航、Shot map、球门和射门详情均直接显示官方设计图。Expected goals stats 标题位于官方 xG 行上方;默认附加指标仅显示 xGOT,其余四项统一收起。

展示位置

  • 位于比赛详情页 Stats > Match,紧接完整 Shot map 与单次射门详情之后,位于其余 Shots 指标之前。
  • Expected goals stats 标题放在 Expected goals (xG) 数据行上方,标题、xG 与附加指标组成同一个连续模块。
  • 复用官方比赛头部、Stats 导航、时段栏、主队绿色与客队金色。

展示内容

  • Shot map、球门、球员行和射门详情保留官方截图原始像素,不使用 CSS 近似重绘。
  • 官方原有 Expected goals (xG) 行始终展示;附加指标默认只露出 xG on target (xGOT)
  • Open-play xG、Set-play xG、Non-penalty xG、xG per shot 默认全部收起,展开后一次显示;全部保留 2 位小数,行样式与官方 Stats 一致。

取数

  • 需要双方在全场、上半场和下半场的累计 xG。
  • 需要每次射门的球队、时间、结果、单次 xG、是否射正、是否点球及运动战或定位球场景。
  • 射正事件需要单次 xGOT;Shot map 还需要射门点和球门落点坐标。

计算

  • 球队 xG = 当前时段全部有效射门 xG 之和xGOT = 当前时段全部射正事件 xGOT 之和
  • Open-play 与 Set-play 按射门场景分别求和;Non-penalty xG = 总 xG − 点球 xG
  • xG per shot = 总 xG ÷ 射门数;比例条按双方同项合计换算。

交互

  • 切换 Match、1st Half、2nd Half 后,Shot map 当前选中点、射门详情和全部预期指标同步刷新。
  • 每个官方射门点覆盖一个透明 44 x 44 px 热区;点击点位或原图中的上一脚/下一脚箭头,仅在原布局内更新球员、分钟、球门落点、结果、xG、xGOT、场景和距离。
  • 默认只显示附加指标 xGOT;点击 Show 4 more 展开其余四项,再次点击收起并只保留 xGOT。
  • 点击问号打开指标口径说明,关闭后焦点返回原按钮。

边界处理

  • 任一方总 xG 缺失时隐藏完整预期进球统计,不以 0 替代。
  • 单个扩展指标任一方无法计算时隐藏整行,其余指标继续展示。
  • 射门数为 0 时 xG per shot 显示“—”;真实 xG 为 0 时显示 0.00。
2

Player stats

官方 Stats 顶部新增 Player · 单场球员技术统计

OFFICIAL PRODUCT BASE时段、指标排名、门将入口可操作
官方比赛头部与 Stats 导航

Player statistics

Full match
Team view
Rank all match players by
FC BarcelonaBorussia DortmundMatch player rankingFull match · Rating · Match rank

Both teams 默认将 Barcelona 与 Dortmund 球员合并为同一张 Match player ranking 榜单并统一排序;切换单队后只展示该队,并重新计算 Team rank。

展示位置

  • 在比赛详情页 Stats 顶部时段栏新增 Player,固定放在 Match 左侧。
  • Match 继续进入官方球队技术统计;Player 进入本场球员统计。

展示内容

  • 默认选中 Both teams,将 Barcelona 与 Dortmund 的球员合并为同一张 Match player ranking 榜单,不按球队拆成两个区块。
  • 每名球员直接展示头像、号码、姓名、所属球队队徽、位置、出场时间和动态名次;名次固定放在头像左侧,Rating 固定显示在身份区右侧,不随排名指标切换而消失。
  • 排名指标严格按 Rating、xG、Key passes、Successful dribbles、Fouls、Passes、Tackles、Interceptions、Blocks、Clearances 排列。
  • 球员卡默认按 Rating、xG、Key passes、Successful dribbles、Fouls、Passes 展示;选择非 Rating 指标后,该指标始终移至数据区第一位并用双列柔和强调,其余默认指标保持相对顺序补齐五格。
  • 其余四项通过英文 More stats 分隔式控制展开;可见数据格和头像左侧名次按钮均可打开完整排名,点击区域不小于 44 x 44 px。
  • 该页是综合球员统计;普通球员行不再展开二级详情,门将行保留进入扑救图的箭头。

取数

  • 需要双方本场出场球员的号码、姓名、位置、首发或替补身份及出场时间。
  • 需要每名球员在全场、上半场和下半场的评分、xG、关键传球、成功过人、犯规、成功传球、抢断、拦截、封堵和解围。

计算

  • 球员计数和 xG 仅汇总对应球员与比赛时段内的有效事件;Passes 使用成功传球数,Successful dribbles 使用成功过人次数
  • 选择 Both teams 时,将双方当前时段出场球员合并降序计算 Match rank;选择单队时,只使用该队球员重新计算 Team rank
  • 切换任一指标后立即按新指标重算名次和列表顺序;同值共享名次,下一名按占用名次数顺延,例如 1、1、3。
  • xG 保留 2 位,Rating 保留 1 位;其余 8 项显示整数次数。

交互

  • 默认选择 Both teams、Full match 和 Rating;Both teams 仅显示一张两队混合榜单并使用 Match rank。
  • 点击 Barcelona 或 Dortmund 后,混合榜单替换为对应单队榜单,并将名次从 Match rank 更新为 Team rank;再次选择 Both teams 后恢复混合榜单。
  • 点击头像左侧名次按钮、任一可见数据格或已展开数据项,打开居中的完整排名弹窗;弹窗显示名次、头像、球队队徽、球员、位置、时段和值,关闭、点击遮罩或按 Escape 后恢复触发项焦点。
  • 点击 More stats 展开剩余四项,按钮切换为 Less stats 并旋转箭头;再次点击收起。切换时段、球队范围或排名指标时默认恢复收起状态。
  • 点击任一非 Rating 排名指标后,该指标同步移至所有球员卡数据区第一位;当前范围内的排名数字、球员顺序、当前指标柔和强调和榜单标题同时变化。Rating 始终固定展示。点击 Match 返回球队技术统计;点击门将行进入门将弹层,返回后恢复时段、球队范围、排名指标和原型内滚动位置。

边界处理

  • 未出场替补不展示;已出场但当前排名指标缺失时显示“—”并排在当前范围末尾,不按 0 处理。
  • 真实计数为 0 正常参与排名;某项数据缺失时显示“—”,不得以 0 代替。
  • 某队无有效数据时隐藏该队筛选项,并默认展示可用球队。
3

Goalkeeper save map

官方球员弹层中的门将扑救图

OFFICIAL PRODUCT BASE点击球门事件查看射门起点
官方 N.Mukiele 球员弹层头部
Mins90
Saves3
Goals
conceded
1
Clean
sheets
0
4Shots on target faced
3Saves
1Goals conceded
1.48xGOT faced
官方球门与半场坐标底图
18'36'45+3'82'
0.31xGOT
S. GuirassyShooter
Right footShot type
Open playSituation
13.8mDistance
SavedOutcome

Match statistics

Shots on target faced4
Expected saves2.52
Actual saves3
Goals prevented+0.48
Save rate75%

弹层背景、头像资料、评分、球门、球网和场地线均来自官方原图。球门内常驻显示全部射正:扑救为手套图标、进球为足球图标;球场初始为空,点击球门事件后才显示对应的一处射门起点和连线。

展示位置

  • 从 Stats > Player 点击门将行后打开官方球员详情弹层。
  • 沿用官方资料头部;在 Shooting map 标题下展示门将汇总、扑救图、时间轴、事件详情和 Match statistics。

展示内容

  • 展示被射正次数、扑救、失球和 xGOT faced;球门区域始终显示全部射正落点
  • 已扑出的射门使用手套图标,进球使用足球图标;选中事件增加结果色外圈。
  • 球场区域不同时铺开全部起点,只显示当前选中射门的一处起点和连线;详情固定展示 xGOT、射门球员、射门方式、进攻场景、距离和结果。

取数与数据部门对接范围

普通数据 APP 已有,无需新增对接

  • 门将基础:头像、球队、号码、位置、评分、出场时间、扑救数、失球数和是否零封。
  • 射正基础事件:每次射正的时段、分钟、射门球员、结果、射门方式、进攻场景和射门距离。
  • 赛事基准基础:同赛事、同位置门将的被射正数、扑救数和出场时间,用于计算平均扑救率。

非预期进球进阶数据 不含 xG / xGOT,需要新增确认

  • 双坐标:每次射正的射门起点坐标和球门落点坐标;球门落点必须使用球门平面坐标,不用球场坐标近似代替。
  • 事件关联:两组坐标、射门球员、被射门门将、精确发生时间和射门结果必须属于同一次射正事件,并提供稳定的事件标识。
  • 坐标口径:确认球场与球门坐标的取值范围、原点、XY 轴方向、攻防方向和换边规则,确保射门起点、路径与落点能够正确对应。

预期模型数据 需要数据部门新增确认

  • 单次 xGOT:对手每次射正的 xGOT,并可按门将、球队和比赛时段汇总为 xGOT faced。
  • 赛事模型基准:同赛事、同位置每位门将的 xGOT faced 与实际扑救数,用于计算平均 Goals prevented。
  • 覆盖与质量:确认支持的赛事和赛季、是否实时更新、上下半场拆分、赛后修正,以及 xGOT 与射正事件的关联完整率。

计算

  • xGOT faced = 对手全部射正事件 xGOT 之和
  • Expected saves = 被射正次数 − xGOT faced;本例 4 − 1.48 = 2.52。
  • Goals prevented = 实际扑救 − Expected saves;本例 3 − 2.52 = +0.48。
  • Save rate = 实际扑救 ÷ 被射正次数 × 100%;本例为 75%。

交互

  • 初始不选择射门,球场区域不显示射门起点或连线。
  • 点击球门内任一手套或进球图标后,突出该落点,并在球场中只显示对应射门起点和一条连线;时间节点与 6 项详情同步更新。
  • 点击另一球门图标直接替换起点、连线和详情;点击 Compare 展开或收起赛事均值,点击 OK 返回 Player 页。

边界处理

  • 本场无射正时隐藏地图、时间轴和事件详情。
  • xGOT faced 缺失时隐藏 Expected saves 和 Goals prevented,不以 0 替代。
  • 球门落点缺失时不显示该事件图标;只有射门起点缺失时仍可选择球门事件并查看详情,但不显示起点和连线。
4

Unified Action map

官方 Stats · Scoring chances 升为最左侧一级 Tab

LIVE INTERACTIVE PROTOTYPE时段、动作、球员和事件均可切换

Scoring chances 作为 Action map 最左侧一级 Tab,展示累计 xG 折线且只标记进球;SHOT 下保留 All shots 与 MIX。全部一级及子 Tab 只在球场或图表内反馈选择,不再追加事件卡、单次动作详情或球员汇总。上方官方切片完整结束红牌行并保留原生分隔线,Action map 以全宽白色 Stats 区块无缝承接,下方既有统计继续使用官方 750 px 设计图切片。

展示位置

  • 位于比赛详情页 Stats > Match,沿用官方比赛头部、一级导航和时段栏。
  • 用一个 Action map 替代原先独立的 Shot map 与 Action map;Scoring chances 放在一级 Tab 最左侧,之后依次为 SHOT、PASS、CARRY、DEFENCE。
  • SHOT 下仅保留 All shots 与 MIX 两个子 Tab;仅替换官方页面原 Shot map 区域。上方切片须完整显示红牌统计行与其下方原生灰色分隔线,Action map 作为全宽白色 Stats 区块直接承接,不使用悬浮卡片外边距、描边或圆角;下方既有统计保持官方设计图原始像素与顺序。

展示内容

  • 同一 Action map 提供 SCORING CHANCES、SHOT、PASS、CARRY、DEFENCE 五个一级 Tab;SHOT 下依次提供 All shots、MIX
  • Scoring chances 的累计 xG 折线仍汇总当前时段全部有效射门,但图中只标记进球节点;不显示未进球射门节点、横向事件卡或单次射门详情。
  • MIX 展示双方总 xG 与射门数,并按 By situation 对比 Open play、Set pieces、Transition,按 By shooting zone 对比 Six-yard box、Central box、Wide box、Outside box 的 xG 与射门数;不重复展示累计折线或逐次射门节点。
  • SHOT 的 All shots 展示双方全部射门、双方射门数与 xG,并可继续筛选具体球员;点击射门点只在球场内突出选择。
  • 球场按正式比例绘制完整边线、中线、中圈、中点、禁区、小禁区、罚球点、禁区弧、角球弧与球门;传球和带球路线使用带白色描边的 SVG 路径,箭头沿路线末端方向对齐。
  • CARRY 只展示带球路线,不叠加带球点位、过人点、犯规点或带球后的射门/进球图标;部分路线使用弧线表达真实推进轨迹。
  • 所有一级 Tab 及其子 Tab 都不显示图表或球场下方的事件卡、单次动作详情或球员全场汇总;关键传球保留为 PASS 内的筛选项,不单独设置 KEY。
  • 动作 Tab、球员选择与二级筛选沿用官方 Stats 的控件调性:金色选中胶囊、浅灰未选中胶囊、白色分隔区,不使用深色方块或蓝灰面板。

取数与数据部门对接范围

普通数据 APP 已有,无需新增对接

  • 比赛与阵容:双方球队、赛事、比赛状态、时段、比分,以及球员姓名、球队、号码、位置、首发/替补身份和出场时间。
  • 现有 Shot map:每次射门的球员、时间、结果、方式、身体部位、运动战/定位球/点球、是否射正、射门起点、球门落点和已有 xG。
  • 现有本场汇总:球员评分、进球、助攻、射门、射正、成功/尝试传球、抢断,以及门将扑救、失球和零封。

进阶事件数据 需要数据部门新增确认

  • 逐次传球:发生时段、分钟、秒和补时,球队、传球者、接球者、起点与终点坐标、成功或失败结果,以及普通传球、直塞、传中、长传、关键传球等类型。
  • 逐次带球:发生时段、开始与结束时间,球队、球员、起点、终点及可用的中间轨迹点、推进距离和结果;如能提供,还需标记带球后是否形成传球、射门、过人、造犯规或丢失球权。
  • 逐次防守:发生时段、分钟、秒和补时,球队、执行球员、对抗球员(如有)、发生点坐标、成功或失败结果,以及抢断、拦截、封堵、解围、争顶、施压、球权夺回等类型。
  • 事件关联:每个动作需要稳定唯一编号,并能够关联比赛时段、球队和球员,按真实发生顺序排列;传球与后续射门、带球与后续动作能够建立关联。
  • 坐标口径:确认起点与终点坐标范围、原点位置、攻防方向和换边规则,保证四类视图能绘制在同一球场。

预期模型数据 需要数据部门新增确认

  • xGOT:每次射正的 xGOT,并可按球队、门将和时段汇总,用于门将扑救图及 Expected saves。
  • xA:每次形成射门的关键传球 xA,能够关联传球者和对应射门,并支持球员与球队汇总。
  • xPass:每次传球的预计成功率,能够关联实际成功结果,并支持球员与球队汇总。
  • 数据覆盖与质量:确认支持的赛事和赛季、是否实时更新、能否按上下半场拆分、赛后是否修正,以及逐次事件的球员、时间、类型和坐标完整率。

现有 xG 无需重复对接:Open-play xG、Set-play xG、Non-penalty xG 和 xG per shot 可使用已有 xG 与普通射门标签计算。

计算

  • 球队 xG = 当前时段全部有效射门 xG 之和;Scoring chances 折线按所有射门的发生时间累计,节点集合再按结果为 Goal 过滤;MIX 按场景与射门区域分别分组求和。
  • SHOT 射门点直径按单次 xG 开平方缩放,避免高值点过度放大;MIX 场景对比条按当前时段双方同组最大 xG 归一化长度。
  • 传球成功率、对抗成功率等比例均按成功次数 ÷ 尝试次数计算;带球距离优先使用数据源提供值。
  • 球员和分类筛选只改变可见事件集合,不重新计算单次事件原始值;CARRY 筛选只在路线集合中切换,不恢复被隐藏的结果点位。

交互

  • 默认选中 Match 与最左侧 Scoring chances;五个一级 Tab 均可切换。
  • Scoring chances 隐藏球员筛选与球场,只显示双方累计 xG、折线和进球节点;点击进球节点只更新图内选中环,不出现下方详情。
  • 进入 SHOT 后默认打开 All shots;点击 MIX 切换为双方机会构成对比,不显示折线与单次事件。
  • 切换 Match、1st Half、2nd Half 后,Scoring chances 同步刷新曲线、进球节点和累计值,MIX 同步刷新双方总量、场景拆分和射门区域拆分。
  • 官方时段胶囊叠加透明 44 x 44 px 操作区;切换时段后只更新 Action map 相关数据,非需求区域仍保持官方视觉。
  • 点击 SHOT 射门点、PASS/CARRY 路线或 DEFENCE 点位时,只更新球场内的选中强调;DEFENCE 点位使用贴合图标的单层紧凑外环,44 x 44 px 点击热区不参与绘制;切换球员或分类后同步过滤球场事件。

边界处理

  • Scoring chances 当前时段有射门但没有进球时,继续显示累计 xG 折线,不显示任何节点;当前组合没有事件时保留空状态,不沿用上一筛选条件的数据。
  • MIX 任一分组缺失时隐藏该分组整行;真实值为 0 时显示 0.00,射门数为 0 时显示 0 shots。
  • 事件坐标缺失或非数值时不绘制该事件;起点或终点仅缺一端时不绘制路线。
  • xPass 或 xA 缺失时隐藏对应字段,不以 0 替代,也不影响基础动作数据展示。
METRIC EXPLANATION

Expected goals 数据范围

本模块只使用射门 xG、射正 xGOT,以及逐次射门的场景和结果。

xG 汇总全部有效射门;xGOT 只汇总射正;运动战、定位球和非点球指标按射门标记拆分。