Audit

01-Health · 结构体检与可视化建议

2026-02-01 · Zon(个人) · Obsidian /01-Health(63 篇笔记)

改进点 · 可视化展示 · 信息价值

当前体系已具备“体检结构化 + 决策支持知识库 + 可分享 HTML 手册”。主要改进点是数据一致性、任务时间线与生活方式日志驱动。

Health OSObsidianDataviewDashboardAudit

TL;DR

你已经把“体检数据结构化 + 指南→策略→随访”这条主线搭起来了。接下来最大的增益,不是再写更多笔记,而是:让看板自动长出来——自动拉取数据、自动给出下一步、自动生成可分享的页面。

现状快照(目录体检)

Notes
63
Frontmatter
38/63 (60%)
Dataview
5 files · 29 blocks
Open Tasks
0 (due: 0)
Content Distribution

按顶层目录统计(01-Health/*

Health-Knowledge
29
Health-Tracking
25
CENN-Health
3
.
2
Movement
2
Nutrition
1
Sleep-Recovery
1
Health-Knowledge 29 Health-Tracking 25 CENN-Health 3 . 2 Movement 2 Nutrition 1 Sleep-Recovery 1
01-Health 内容覆盖(按顶层目录统计)。

主要缺口(优先级从高到低)

Data Integrity

同一字段语义不稳create-date 有时是体检日期,有时是文件创建日期(例:体检ZON/2018.md)。建议固定为体检日期,另用 file.ctime 或新增 note-created

关键指标缺失会让趋势图不可用:ZON 7 份记录中,缺 BMI 3 份、缺 BP 3 份。

Actionability

知识库很强,但行动闭环还差“定期复盘”页面:目前任务多集中在单个 TODO 文档,缺一个跨文件的“Upcoming”。

建议做:风险清单(watchlist) + 随访时间线(due dates) + 看板入口统一(个人健康档案成为唯一入口)。

Lifestyle Data Layer

睡眠/营养/运动目前是“手填模板”:一旦忙起来就会空着,难形成真实数据。

建议最小化:每天只记录 5 个字段(睡眠时长、主观能量、运动、蛋白质/外食、压力),周末自动汇总。

可视化怎么做(把“信息”变成“决策”)

数据层 体检/YAML · 日志 · 附件 知识层 指南 · 综述 · 策略 决策层 风险分层 · 触发条件 行动层 随访 TODO · 门诊清单 复盘层(节律) 每周:生活方式 · 每月:指标趋势 · 每季:随访进度 复盘会反哺:补数据、修策略、改行动
推荐的 Health OS 架构:把“数据/知识/决策/行动/复盘”分层,避免笔记越写越多但无法执行。
Follow-up Timeline

你已经在任务里写了日期((@YYYY-MM-DD),只差把它做成“可看见的时间线”。

建议在 个人健康档案 或任意看板里加一个 DataviewJS 区块,自动显示未来 90 天要做的事:

```dataviewjs
const pages = dv.pages('"01-Health"');

const parseDue = (text) => {
  const m = text.match(/\(@(\d{4}-\d{2}-\d{2})\)/);
  if (!m) return null;
  return dv.date(m[1]);
};

const tasks = pages
  .flatMap(p => p.file.tasks.map(t => ({...t, page: p})))
  .where(t => !t.completed)
  .map(t => ({
    due: parseDue(t.text),
    text: t.text.replace(/\(@\d{4}-\d{2}-\d{2}\)/, '').trim(),
    file: t.page.file.path,
    link: t.page.file.link,
  }))
  .where(t => t.due)
  .sort(t => t.due, 'asc');

dv.table(['Due','From','Task'], tasks
  .where(t => t.due <= dv.date('today') + dv.duration('90 days'))
  .map(t => [t.due, t.link, t.text])
);
```
Trends

体检指标已经结构化(YAML + Dataview)。下一步建议做 3 条“趋势线”:

  • 基础体征:BMI / BP(每次体检、或每月一次家庭测量)。
  • 重点风险指标:例如球蛋白、A/G、关键影像结论(用 watchlist + next_actions 触发)。
  • 生活方式:睡眠时长/能量评分/运动次数(周度聚合)。

你已在 体检数据概览.md 里写了 obsidian-charts 示例,可以直接复用。

数据完整性(体检记录)

原则:体检记录是你的“唯一事实来源”。缺字段不会影响叙述,但会直接影响趋势图、自动汇总和未来决策的速度。

体检记录数据完整性(ZON)

Yearcreate-dateFileGaps
20172017-08-2001-Health/Health-Tracking/体检ZON/2017.mdOK
20182025-09-0401-Health/Health-Tracking/体检ZON/2018.mdcreate-date/year, BMI, BP, risk_level, key_findings
20202020-09-1401-Health/Health-Tracking/体检ZON/2020.mdOK
20212021-08-1401-Health/Health-Tracking/体检ZON/2021.mdOK
20222022-09-2701-Health/Health-Tracking/体检ZON/2022.mdOK
20242024-08-2201-Health/Health-Tracking/体检ZON/2024.mdBMI, BP, risk_level
20252025-09-0101-Health/Health-Tracking/体检ZON/2025.mdBMI, BP

体检记录数据完整性(CENN)

Yearcreate-dateFileGaps
20172017-08-1601-Health/Health-Tracking/体检CENN/2017.mdOK
20182018-09-1801-Health/Health-Tracking/体检CENN/2018.mdOK
20202020-09-0401-Health/Health-Tracking/体检CENN/2020.mdOK
20212021-08-2701-Health/Health-Tracking/体检CENN/2021.mdOK
20222022-09-2701-Health/Health-Tracking/体检CENN/2022.mdOK
20242024-XX-XX01-Health/Health-Tracking/体检CENN/2024.mdBMI, BP, risk_level
20252025-10-2101-Health/Health-Tracking/体检CENN/2025.mdOK
为什么这很重要(避免未来的熵增)
  • 看板与图表依赖稳定字段:BMI/BP/create-date/risk_level/watchlist
  • create-date 建议语义固定为“体检日期”;文件创建时间用 file.ctime 即可,不要写进 YAML。
  • 模板占位(如 2024-XX-XX)建议加 status: draft,并在 Dataview 查询里排除 where status != 'draft'

随访任务清单(从“文档”升级为“系统”)

当前在 01-Health 里检索到带日期的未完成任务共 0 条,最早集中在 2026-03-31(多个随访项)。

DueFileTask

Best Minds 视角(各说一句真话)

Tiago Forte

立场:把健康笔记当成“第二大脑里的行动系统”,不是知识仓库。重点是:捕捉→组织→提炼→表达,最后落到下一步。

对你这里最关键的一点:你已经有结构化数据与 MOC,但还缺一个跨页面的“近期行动视图”。

Edward Tufte

立场:可视化不是装饰,而是压缩复杂度的工具。最好的一张图,能让你在 10 秒内做出“下一步”决策。

对你这里最关键的一点:用趋势线 + 触发阈值(高亮)代替长段解释;把“异常/随访/红旗”做成可扫描结构。

Atul Gawande

立场:医疗场景下,清单不是为了“更努力”,而是为了“更不容易漏”。

对你这里最关键的一点:门诊提问清单和随访 TODO 很好;下一步是把它们变成“每次复诊前自动生成的一页纸”。

Peter Attia

立场:优化健康要聚焦在可行动的风险因子与长期趋势;“一次体检结论”不如“多年趋势 + 风险分层”。

对你这里最关键的一点:你已经在做风险分层(risk_level/watchlist);把关键指标补齐后,趋势看板会变成你的主驾驶舱。

优化路线图(最小可用 → 渐进增强)

阶段目标产出第一步
1h 修数据一致性 看板不再漏数据 修正 体检CENN/2025.md 的前导空行;校准 体检ZON/2018.mdcreate-date
1d 把任务做成时间线 Next 90 days 自动清单 把本报告中的 DataviewJS snippet 粘到 个人健康档案
1w 生活方式日志驱动 睡眠/营养/运动周报 新增 01-Health/Health-Tracking/Daily Health Log 模板(5 字段)并开始记录
1m 对外可分享视图 健康手册 + 随访时间线 HTML 复用 scripts/gen_health_handbook.py 的思路,把任务/趋势也生成到 docs/

Sources(本次仅基于仓库内容)

Closing Summary

结论:你已经完成了健康系统里最值钱的部分(结构化体检数据 + 决策支持知识库 + 可分享手册)。下一阶段的关键是:让“随访与生活方式”成为可视化、可复盘、自动驱动的节律。

One next action:把“Next 90 days(任务时间线)”加进 个人健康档案,让你每次打开就知道下一步。

把健康管理做成系统,而不是靠记忆。
— Closing note