Personal Health / Data Viz

健康工作台

基于历年真实双人体检数据的健康可视化工作台。用全身视图(Body Map)把离散的化验单、影像与主诉体感,重组成以人体部位为主线的用户视角。它延续了早期 healthmeanagment「隐私优先报告解析」的探索,把多年数据整合进一个可持续的个人健康 OS。

角色
Owner / Product Engineer:从真实个人健康工作流出发,覆盖信息架构、前端、数据建模与隐私设计。
时间
持续迭代 · 2026-07-31
平台
Desktop Web / Mobile Web

把历年体检数据,变成「今天该关心哪里」

01 / Background

为什么做:数据散落,等决策时已晚

  • 体检数据天然是碎的:每年换机构、换格式,报告躺在 PDF 和相册里;等到真要拿主意时,早就拼不回连续的全貌。
  • 真正的问题不是「没有图」,而是「无法行动」——手里有十年数据,却回答不了「今年最该盯哪里」「哪一项在悄悄变差」。
  • 双人数据叠在一起更乱:同样的指标各自漂移,靠人脑比对既慢,又容易漏掉交叉信号。
健康工作台 current product surface
当前产品界面

健康工作台 当前公开展示界面。

01

02 / Vision

理想:把历年真实数据,变成「今天该关心哪里」

  • 我想要一个个人健康操作系统:打开第一屏不是指标清单,而是「我这个人」——哪里平稳、哪里在边界、哪里今年没查。
  • 长期规划是把散点变成连续叙事:逐年可下钻、异常可回溯、随访可生成、隐私可切换;它服务「日常的自己」,不是某次就诊。
  • 它必须本地优先、数据私有;展示给别人看时,能一键脱敏而不丢失产品判断本身。
01全身视图 Body Map
02真实双人体检数据
03六视图 + 主客观双轨
04手写 SVG · 零图表库
05real / masked 双模式隐私层
06healthmeanagment 演进整合
项目事实

项目当前最重要的交付与判断。

02

03 / Evolution

演进:从 healthmeanagment 到 health-workbench

  • 更早的 healthmeanagment 是一条「隐私优先的报告解析」探索:把单份高隐私报告解析成可追溯洞察,并接上长期记录链路,验证了「上传-解析-分析-追踪」的产品可行性。
  • 但它止步于「一份报告」,没能把多年数据整合进一个以人为中心的主视图。health-workbench 是它的成熟形态——不再解析单份,而是把历年数据收束进全身视图,让「整合」本身成为产品。
  • 两者不是替代,而是同一想法的两次收敛:先验证解析与隐私边界,再把它升维成可持续的个人健康 OS。
01Collect
02Map
03Prioritize
04Drill
05Review
产品流程

从输入到结果的核心使用路径。

03

04 / Process

设计过程与思路:从「指标列表」转向「人体部位」

  • 第一版按科室和指标组织,做完自己都觉得不够直观——它复述了医院的分类,没回答用户视角。关键转折是把主轴从「指标维度」换到「人体部位」。
  • 叙事不调 LLM:用 6 条规则(化验全绿但影像有风险 / 区间内却走得最快 / 多年反复 / 数据空白 / 已回落 / 双人不同轨)生成「看似健康其实…」的提示,每条都带数据来源标注。
  • 人体图、趋势、sparkline 全部手写 SVG,零图表库依赖;隐私在 view-model 层脱敏,原始数据集保留真值。动效走 Apple 弹簧曲线,attention 部位做呼吸提示并尊重 reduced-motion。
04

05 / Positioning

产品定位:个人决策辅助,不是临床工具

  • 它明确声明「仅个人自用量表、非临床」:健康指数由「区间内占比 − 随访扣分」规则生成,用来帮自己排优先级,不替代医生判断。
  • 本地优先、数据私有;real / masked 双模式让同一套产品既能自用、也能脱敏展示。六视图覆盖概览、变化速度、趋势矩阵、双人对照、主客观双轨、随访排程。
  • 双人对照只是其中一个视图——它有用,但只是「整合视角」之下的一个子能力,不是产品的主轴。
05

06 / Efficiency

提效价值:把「翻 N 份 PDF」压缩成一屏

  • 过去做一次年度复盘,要翻遍各年报告、手动比对、再自己列复查项;现在打开即见优先级部位,点开一键下钻到逐年数值与年化变化。
  • 随访视图把越线 / 临界项直接转成下次复查清单,省掉手工整理。隐私切换让「给别人看」也不再是重新截图打码的体力活。
  • 省下的不是几秒,而是「本来就不会去做」的复盘——让长期健康记录真正进入日常。
06

体验深描

痛点、用户故事与交互设计

这一段不讲技术栈,只讲「人在什么处境下用它、哪里卡住、我做了什么回应」。

我的痛点

这些项目都从我自己被卡住的地方开始。

  1. P01

    每年换机构、换格式,报告躺在 PDF 和相册里;等真要拿主意时,十年数据拼不回连续的全貌。

  2. P02

    有图不等于能行动——手里有十年数据,却回答不了「今年最该盯哪里」「哪一项在悄悄变差」。

  3. P03

    双人数据叠在一起更乱:同样的指标各自漂移,靠人脑比对既慢又容易漏掉交叉信号。

  4. P04

    第一版按科室和指标组织,做完自己都觉得不够直观——它复述了医院的分类,没回答用户视角。

  5. P05

    想把产品判断展示给别人看,又不能暴露真实健康数据。

用户故事

写成「作为…我想…以便…」,每条对应一个可验证的产品动作。

  • US01

    作为做年度复盘的人,我想打开第一屏就看到「我这个人」哪里平稳、哪里在边界、哪里今年没查,以便直接排优先级。

  • US02

    作为关注长期变化的人,我想点开任一部位下钻到逐年数值与年化变化,以便看出正在悄悄变差的项。

  • US03

    作为容易被全绿报告骗过的人,我想系统提示「看似健康其实…」的例外,以便不漏掉交叉信号。

  • US04

    作为要安排复查的人,我想越线 / 临界项自动转成下次复查清单,以便省掉手工整理。

  • US05

    作为要对外展示的人,我想一键切到脱敏态而不丢失产品判断,以便隐私与展示不再冲突。

用户体验旅程

按真实使用顺序展开:此刻在做什么 / 哪里有摩擦 / 产品怎么回应。

阶段此刻在做什么摩擦点产品回应
01Collect 汇入
把历年报告、主诉体感与历史影像交给系统。
格式年年变、口径不一,散点数据无法直接比较。
ETL 走解析 → 指标抽取 → 参考区间对齐 → 按年份堆叠,把散点变成可计算结构。
02Map 映射
打开第一屏,想看到的是「我这个人」而不是指标清单。
按科室与指标组织,等于复述医院分类,用户视角缺席。
主轴从「指标维度」换到「人体部位」,organ-map 把指标挂到部位,Body Map 成为第一屏。
03Prioritize 排优先级
想知道今年最该关心哪里。
化验全绿会掩盖影像风险,区间内的指标也可能走得最快。
用 6 条规则生成「看似健康其实…」提示,不调 LLM,每条都带数据来源标注。
04Drill 下钻
对某个部位存疑,想看逐年数值。
过去要翻遍各年 PDF 手动比对。
点开部位即在同一屏下钻到逐年数值、年化变化与趋势矩阵。
05Review 随访
复盘结束,需要产出下一步动作。
手工整理复查项太麻烦,结果就是「本来就不会去做」。
随访视图把越线 / 临界项直接转成下次复查清单。

交互细节

决定「用起来顺不顺」的微观判断。

人体部位可点击
全身视图用状态语义色标出平稳、边界与今年未查,点击任一部位进入详情面板。
attention 部位做呼吸提示
需要关注的部位以缓慢呼吸动效提示,动效走 Apple 弹簧曲线并尊重 reduced-motion。
每条提示可回溯
「看似健康其实…」的每条叙事都标注数据来源,可回溯到具体年份与指标。
real / masked 一键切换
脱敏发生在 view-model 层而非展示层打码,切换后产品判断完全保留。
六视图共享同一份 view-model
概览、变化速度、趋势矩阵、双人对照、主客观双轨与随访排程之间切换不重新加载数据。

设计细节

视觉系统、状态语言与节奏上的取舍。

手写 SVG,零图表库
人体图、趋势线与 sparkline 全部手写 SVG,避免图表库把视觉语言拉回通用模板。
规则生成叙事而非 LLM
6 条规则可解释、可复现,比不可控的模型生成更适合健康这类高信任场景。
明确的非临床声明
健康指数由「区间内占比 − 随访扣分」生成,界面上明确标注仅个人自用量表、非临床工具。
七层契约
routes → data → view-model → primitives → feature → theme → verification,任何改动都能定位到唯一一层。
数据层与表现层分离
feature 组件只做组合、不持有业务规则;隐私在 view-model 层统一处理。