Personal Health / Data Viz
健康工作台
源于多年纵向健康记录整理需求的本地健康可视化工作台。用全身视图(Body Map)把离散的化验、影像与主诉体感,重组成以人体部位为主线的用户视角。公开案例只使用完全合成的演示画面,真实数据与构建产物保持私有。
- 角色
- Owner / Product Engineer:从真实个人健康工作流出发,覆盖信息架构、前端、数据建模与隐私设计。
- 时间
- 持续迭代 · 2026-08-24
- 平台
- macOS / Desktop Web / Mobile Web
把历年体检数据,变成「今天该关心哪里」
01 / Background
为什么做:数据散落,等决策时已晚
- 体检数据天然是碎的:每年换机构、换格式,报告躺在 PDF 和相册里;等到真要拿主意时,早就拼不回连续的全貌。
- 真正的问题不是「没有图」,而是「无法行动」——手里有十年数据,却回答不了「今年最该盯哪里」「哪一项在悄悄变差」。
- 双人数据叠在一起更乱:同样的指标各自漂移,靠人脑比对既慢,又容易漏掉交叉信号。

目标体验概念图(完全合成),用于表达视觉与信息架构方向,不是当前产品截图。
02 / Vision
理想:把历年真实数据,变成「今天该关心哪里」
- 我想要一个个人健康操作系统:打开第一屏不是指标清单,而是「我这个人」——哪里平稳、哪里在边界、哪里今年没查。
- 长期规划是把散点变成连续叙事:逐年可下钻、异常可回溯、随访可生成、隐私可切换;它服务「日常的自己」,不是某次就诊。
- 它必须本地优先、数据私有;对外展示使用独立的合成数据集,而不是依赖界面开关隐藏真实数据。
项目当前最重要的交付与判断。

当前 Health Workbench 程序运行界面;全部数值由独立合成数据生成。
03 / Evolution
演进:从 healthmeanagment 到 health-workbench
- 更早的 healthmeanagment 是一条「隐私优先的报告解析」探索:把单份高隐私报告解析成可追溯洞察,并接上长期记录链路,验证了「上传-解析-分析-追踪」的产品可行性。
- 但它止步于「一份报告」,没能把多年数据整合进一个以人为中心的主视图。health-workbench 是它的成熟形态——不再解析单份,而是把历年数据收束进全身视图,让「整合」本身成为产品。
- 两者不是替代,而是同一想法的两次收敛:先验证解析与隐私边界,再把它升维成可持续的个人健康 OS。
从输入到结果的核心使用路径。
04 / Process
设计过程与思路:从「指标列表」转向「人体部位」
- 第一版按科室和指标组织,做完自己都觉得不够直观——它复述了医院的分类,没回答用户视角。关键转折是把主轴从「指标维度」换到「人体部位」。
- 最新实现进一步把概念图中的信息架构落到真实程序:中央人体作为主焦点,六组已实现的健康证据卡环绕,右侧集中趋势、今日关注和随访;没有把路线图里的睡眠、营养等模块伪装成已上线能力。
- 叙事不调 LLM:用 6 条规则(化验全绿但影像有风险 / 区间内却走得最快 / 多年反复 / 数据空白 / 已回落 / 双人不同轨)生成「看似健康其实…」的提示,每条都带数据来源标注。
- 人体是为本项目生成并归属本项目的透明 3D 资产,交互热点继续连接真实部位证据;趋势与 sparkline 由代码原生绘制,零图表库依赖,也不使用第三方产品截图。
05 / Positioning
产品定位:个人决策辅助,不是临床工具
- 它明确声明「仅个人自用量表、非临床」:健康指数由「区间内占比 − 随访扣分」规则生成,用来帮自己排优先级,不替代医生判断。
- 本地优先、数据私有;real / masked 只用于本地查看体验,不被当作公开安全边界。公开案例使用完全合成的数据与画面。七视图覆盖全身视图、概览、变化速度、趋势矩阵、双人对照、主客观双轨与随访排程。
- 双人对照只是其中一个视图——它有用,但只是「整合视角」之下的一个子能力,不是产品的主轴。
06 / Efficiency
提效价值:把「翻 N 份 PDF」压缩成一屏
- 过去做一次年度复盘,要翻遍各年报告、手动比对、再自己列复查项;现在打开即见优先级部位,点开一键下钻到逐年数值与年化变化。
- 随访视图把越线 / 临界项直接转成下次复查清单,省掉手工整理。对外演示通过独立合成数据生成,避免把展示便利误当成隐私保护。
- 省下的不是几秒,而是「本来就不会去做」的复盘——让长期健康记录真正进入日常。
体验深描
痛点、用户故事与交互设计
这一段不讲技术栈,只讲「人在什么处境下用它、哪里卡住、我做了什么回应」。
我的痛点
这些项目都从我自己被卡住的地方开始。
- P01
每年换机构、换格式,报告躺在 PDF 和相册里;等真要拿主意时,十年数据拼不回连续的全貌。
- P02
有图不等于能行动——手里有十年数据,却回答不了「今年最该盯哪里」「哪一项在悄悄变差」。
- P03
双人数据叠在一起更乱:同样的指标各自漂移,靠人脑比对既慢又容易漏掉交叉信号。
- P04
第一版按科室和指标组织,做完自己都觉得不够直观——它复述了医院的分类,没回答用户视角。
- P05
想把产品判断展示给别人看,又不能暴露真实健康数据。
用户故事
写成「作为…我想…以便…」,每条对应一个可验证的产品动作。
- US01
作为做年度复盘的人,我想打开第一屏就看到「我这个人」哪里平稳、哪里在边界、哪里今年没查,以便直接排优先级。
- US02
作为关注长期变化的人,我想点开任一部位下钻到逐年数值与年化变化,以便看出正在悄悄变差的项。
- US03
作为容易被全绿报告骗过的人,我想系统提示「看似健康其实…」的例外,以便不漏掉交叉信号。
- US04
作为要安排复查的人,我想越线 / 临界项自动转成下次复查清单,以便省掉手工整理。
- US05
作为要对外展示的人,我想一键切到脱敏态而不丢失产品判断,以便隐私与展示不再冲突。
用户体验旅程
按真实使用顺序展开:此刻在做什么 / 哪里有摩擦 / 产品怎么回应。
交互细节
决定「用起来顺不顺」的微观判断。
- 人体部位可点击
- 全身视图用状态语义色标出平稳、边界与今年未查,点击任一部位进入详情面板。
- 人体热点保留真实下钻
- 柔和 3D 人体不是静态装饰;六个可访问热点仍可打开对应部位的逐年证据。
- 每条提示可回溯
- 「看似健康其实…」的每条叙事都标注数据来源,可回溯到具体年份与指标。
- real / masked 一键切换
- 脱敏发生在 view-model 层而非展示层打码,切换后产品判断完全保留。
- 七视图共享同一份 view-model
- 全身视图、概览、变化速度、趋势矩阵、双人对照、主客观双轨与随访排程之间切换不重新加载数据。
设计细节
视觉系统、状态语言与节奏上的取舍。
- 第一方 3D 人体与代码原生图表
- 人体是为本项目生成并归属本项目的透明资产;趋势线与 sparkline 继续由代码原生绘制,不使用第三方产品截图。
- 规则生成叙事而非 LLM
- 6 条规则可解释、可复现,比不可控的模型生成更适合健康这类高信任场景。
- 明确的非临床声明
- 健康指数由「区间内占比 − 随访扣分」生成,界面上明确标注仅个人自用量表、非临床工具。
- 七层契约
- routes → data → view-model → primitives → feature → theme → verification,任何改动都能定位到唯一一层。
- 数据层与表现层分离
- feature 组件只做组合、不持有业务规则;隐私在 view-model 层统一处理。