01-Health · 结构体检与可视化建议
2026-02-01 · Zon(个人) · Obsidian /01-Health(63 篇笔记)
改进点 · 可视化展示 · 信息价值
当前体系已具备“体检结构化 + 决策支持知识库 + 可分享 HTML 手册”。主要改进点是数据一致性、任务时间线与生活方式日志驱动。
TL;DR
你已经把“体检数据结构化 + 指南→策略→随访”这条主线搭起来了。接下来最大的增益,不是再写更多笔记,而是:让看板自动长出来——自动拉取数据、自动给出下一步、自动生成可分享的页面。
- 修 3 个数据一致性问题:
体检CENN/2025.md前有空行导致前言失效;体检ZON/2018.md的create-date年份与文件名不一致;若干年度缺BMI/BP导致趋势不可视化。 - 把随访任务变成时间线:目前
01-Health中共有0条未完成任务,其中0条带日期((@YYYY-MM-DD))。建议做一个“Next 90 days”自动清单。 - 生活方式板块仍是“空模板”(睡眠/营养/运动):如果把它们改成“日志驱动 + 周/月汇总”,它会成为你最常打开、最能产生反馈的部分。
- 复用已有 HTML 资产:你已经有
docs/health-handbook/index.html(身体三视图导航)。建议把它与“随访时间线”拼成一套可分享的外部视图。
现状快照(目录体检)
按顶层目录统计(01-Health/*)
主要缺口(优先级从高到低)
同一字段语义不稳:create-date 有时是体检日期,有时是文件创建日期(例:体检ZON/2018.md)。建议固定为体检日期,另用 file.ctime 或新增 note-created。
关键指标缺失会让趋势图不可用:ZON 7 份记录中,缺 BMI 3 份、缺 BP 3 份。
知识库很强,但行动闭环还差“定期复盘”页面:目前任务多集中在单个 TODO 文档,缺一个跨文件的“Upcoming”。
建议做:风险清单(watchlist) + 随访时间线(due dates) + 看板入口统一(个人健康档案成为唯一入口)。
睡眠/营养/运动目前是“手填模板”:一旦忙起来就会空着,难形成真实数据。
建议最小化:每天只记录 5 个字段(睡眠时长、主观能量、运动、蛋白质/外食、压力),周末自动汇总。
可视化怎么做(把“信息”变成“决策”)
你已经在任务里写了日期((@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])
);
``` 体检指标已经结构化(YAML + Dataview)。下一步建议做 3 条“趋势线”:
- 基础体征:BMI / BP(每次体检、或每月一次家庭测量)。
- 重点风险指标:例如球蛋白、A/G、关键影像结论(用
watchlist+next_actions触发)。 - 生活方式:睡眠时长/能量评分/运动次数(周度聚合)。
你已在 体检数据概览.md 里写了 obsidian-charts 示例,可以直接复用。
数据完整性(体检记录)
原则:体检记录是你的“唯一事实来源”。缺字段不会影响叙述,但会直接影响趋势图、自动汇总和未来决策的速度。
体检记录数据完整性(ZON)
| Year | create-date | File | Gaps |
|---|---|---|---|
2017 | 2017-08-20 | 01-Health/Health-Tracking/体检ZON/2017.md | OK |
2018 | 2025-09-04 | 01-Health/Health-Tracking/体检ZON/2018.md | create-date/year, BMI, BP, risk_level, key_findings |
2020 | 2020-09-14 | 01-Health/Health-Tracking/体检ZON/2020.md | OK |
2021 | 2021-08-14 | 01-Health/Health-Tracking/体检ZON/2021.md | OK |
2022 | 2022-09-27 | 01-Health/Health-Tracking/体检ZON/2022.md | OK |
2024 | 2024-08-22 | 01-Health/Health-Tracking/体检ZON/2024.md | BMI, BP, risk_level |
2025 | 2025-09-01 | 01-Health/Health-Tracking/体检ZON/2025.md | BMI, BP |
体检记录数据完整性(CENN)
| Year | create-date | File | Gaps |
|---|---|---|---|
2017 | 2017-08-16 | 01-Health/Health-Tracking/体检CENN/2017.md | OK |
2018 | 2018-09-18 | 01-Health/Health-Tracking/体检CENN/2018.md | OK |
2020 | 2020-09-04 | 01-Health/Health-Tracking/体检CENN/2020.md | OK |
2021 | 2021-08-27 | 01-Health/Health-Tracking/体检CENN/2021.md | OK |
2022 | 2022-09-27 | 01-Health/Health-Tracking/体检CENN/2022.md | OK |
2024 | 2024-XX-XX | 01-Health/Health-Tracking/体检CENN/2024.md | BMI, BP, risk_level |
2025 | 2025-10-21 | 01-Health/Health-Tracking/体检CENN/2025.md | OK |
为什么这很重要(避免未来的熵增)
- 看板与图表依赖稳定字段:
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(多个随访项)。
| Due | File | Task |
|---|
Best Minds 视角(各说一句真话)
立场:把健康笔记当成“第二大脑里的行动系统”,不是知识仓库。重点是:捕捉→组织→提炼→表达,最后落到下一步。
对你这里最关键的一点:你已经有结构化数据与 MOC,但还缺一个跨页面的“近期行动视图”。
立场:可视化不是装饰,而是压缩复杂度的工具。最好的一张图,能让你在 10 秒内做出“下一步”决策。
对你这里最关键的一点:用趋势线 + 触发阈值(高亮)代替长段解释;把“异常/随访/红旗”做成可扫描结构。
立场:医疗场景下,清单不是为了“更努力”,而是为了“更不容易漏”。
对你这里最关键的一点:门诊提问清单和随访 TODO 很好;下一步是把它们变成“每次复诊前自动生成的一页纸”。
立场:优化健康要聚焦在可行动的风险因子与长期趋势;“一次体检结论”不如“多年趋势 + 风险分层”。
对你这里最关键的一点:你已经在做风险分层(risk_level/watchlist);把关键指标补齐后,趋势看板会变成你的主驾驶舱。
优化路线图(最小可用 → 渐进增强)
| 阶段 | 目标 | 产出 | 第一步 |
|---|---|---|---|
1h |
修数据一致性 | 看板不再漏数据 | 修正 体检CENN/2025.md 的前导空行;校准 体检ZON/2018.md 的 create-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(本次仅基于仓库内容)
01-Health/个人健康档案.md01-Health/Health-Tracking/ZON体检指标看板.md/01-Health/CENN-Health/CENN体检指标看板.md01-Health/Health-Tracking/体检ZON/*.md/01-Health/Health-Tracking/体检CENN/*.md01-Health/Health-Knowledge/README-健康知识库索引.md/docs/health-handbook/index.html
Closing Summary
结论:你已经完成了健康系统里最值钱的部分(结构化体检数据 + 决策支持知识库 + 可分享手册)。下一阶段的关键是:让“随访与生活方式”成为可视化、可复盘、自动驱动的节律。
One next action:把“Next 90 days(任务时间线)”加进 个人健康档案,让你每次打开就知道下一步。