Obsidian 掌握度可视化与插件
在不改变 Thought Forest mastery 1–5 语义的前提下,用 Bases/Dataview 展示掌握度,并按需叠加 SRS、Ratings 或 Progress 工具;插件只负责 UI 与调度,不定义掌握标准。
[!info] related notes
- 掌握标准: 学习中的掌握
- 学习追踪: Obsidian 学习追踪系统
- MOC 展示: [[knowledge-map-and-atomic-note-spec|知识地图与原子笔记规范]]
- Dataview: Dataview 插件指南
- 间隔复习: 学习中的间隔效应
Obsidian 掌握度可视化与插件
目标
目标不是“找到一个能打五星的插件”。
目标是:
让正式的
mastery: 1–5能被方便查看、筛选和更新,同时不让插件重新定义掌握语义。
唯一权威语义来自 学习中的掌握。
推荐分层
mastery
= 知识状态
Bases / Dataview
= 展示与查询
Ratings 类 UI
= 可选的数值编辑入口
Spaced Repetition
= 复习调度
Progress Bar
= 完成进度可视化
Habit Tracker
= 行为习惯
五层不要混成一个数字。
1. Bases:MOC 默认展示
Thought Forest 的 MOC 推荐直接读取目标节点 frontmatter:
知识 | Description | Mastery
优点:
- 不维护第二份数据;
- 直接使用
mastery; - 与 MOC 的链接图一致;
- 适合按主题浏览。
MOC 自己默认不维护 mastery。
2. Dataview:跨主题查询
例如找 mastery 1–2:
TABLE mastery, description
FROM "z"
WHERE mastery AND mastery <= 2
SORT mastery ASC
找 mastery 3、准备做迁移测试:
TABLE mastery, description
FROM "z"
WHERE mastery = 3
SORT file.mtime DESC
这里的数值仍然是行为等级,不是百分比。
3. Ratings 类插件:只能做输入 UI
如果使用 Ratings / Property UI 一类插件,应把它理解成:
更快地把整数 1–5 写入
mastery。
而不是:
⭐⭐⭐
= 60%
如果插件只能写 rating 而不能稳定操作 mastery,优先不要把 rating 引入正式 schema。
可以直接使用 Obsidian Properties、Bases 或其他能编辑 frontmatter 的 UI。
4. Spaced Repetition:负责调度
SRS 工具可以决定:
- 今天复习哪些卡片;
- 答得容易还是困难;
- 下一次什么时候出现;
- 复习历史。
但它不应该自动把:
Easy
→ mastery 5
因为单次卡片回答只是局部证据。
Mastery 还要求:
- 整体模型;
- 边界;
- 应用;
- 迁移;
- 延迟稳定性。
5. Progress Bar:只表示完成量
适合:
课程 8 / 12
题库 35 / 50
项目 milestone 4 / 6
不适合:
知识掌握 80%
因为 mastery 不是线性百分比。
6. Habit Tracker:只表示行为
可以记录:
- 学习天数;
- retrieval session 次数;
- 做题次数;
- 阅读时间。
但:
连续学习 30 天
≠ mastery 5
Habit 数据只能解释学习过程,不直接证明知识能力。
一个最小 Dashboard
不需要复杂插件栈。
当前需要学习
TABLE mastery, description
FROM "z"
WHERE mastery AND mastery <= 2
SORT mastery ASC
准备迁移测试
TABLE mastery, description
FROM "z"
WHERE mastery = 3
SORT file.mtime ASC
稳定节点
TABLE mastery, description
FROM "z"
WHERE mastery >= 4
SORT mastery DESC
但不要把“稳定节点数量”当成学习质量 KPI。
mastery 的正确更新流程
先闭卷提取
→ 做学习检查 / 真实任务
→ 核对反馈
→ 判断证据等级
→ 最后更新 mastery
不要:
先点 5 星
→ 再说“我应该已经掌握”
插件选择原则
首选:不改变 schema
优先选择能直接读取/编辑已有 frontmatter 的工具。
第二:数据可导出
学习状态应保留在 Markdown / frontmatter,而不是只存在插件私有数据库。
第三:插件可替换
如果某插件停更:
mastery
仍然是有效数据
这比“学习系统完全依赖某个 UI 插件”稳得多。
不推荐的模型
rating × 20
rating: 4
→ mastery: 80%
删除这个换算。
平均 mastery
平均 = 3.67
通常没有明确行为含义。
两套字段并存
rating: 4
mastery: 3
如果两个字段都表达掌握度,迟早漂移。
正式知识节点只保留 mastery。
配置检查
- 正式状态只使用
mastery: 1..5; - MOC 不维护第二份 mastery;
- UI 插件不会自动把星级换算成百分比;
- SRS 只调度,不重新定义 mastery;
- Progress 与 Mastery 分开;
- Habit 与 Mastery 分开;
- 插件移除后数据仍可从 Markdown/frontmatter 读取。
无提示执行检查
- 给一个 mastery 2 节点设计 Dashboard 展示。
- 解释为什么不能把 4/5 写成 80%。
- 说明 Ratings、SRS、Progress、Habit 四类工具分别负责什么。
- 移除所有插件后,指出哪些学习数据仍应保留。
- 设计一次从 retrieval evidence 到更新 mastery 的操作流程。