ObsidianとDataviewで習慣トラッキングを構築する方法|PKMと習慣管理の融合
ObsidianとDataviewプラグインを使って習慣トラッキングシステムを構築する方法を解説。デイリーノートへの記録からDataviewによる集計・可視化まで、具体的なコードとテンプレートを紹介します。
「Notionで習慣管理を試みたが、開くたびに構造が複雑すぎてやめた」「Excelは起動が面倒で続かなかった」——この2つの不満を同時に解決できるのが、ObsidianとDataviewの組み合わせだ。すでにObsidianをPKM(個人知識管理)として使っているなら、同じツールの中に習慣トラッキングを統合できる。知識の記録と行動の記録が一つのシステムで完結する体験は、どちらの習慣も維持しやすくする。
ObsidianとDataviewの基本理解
Obsidianとは
Obsidianはローカル保存のMarkdownエディタであり、リンクとタグで情報をグラフ構造で管理できるPKMツールだ。インターネット接続不要・データはすべて自分のPC内に保存という特徴が、プライバシーを重視するユーザーに支持されている。
Dataviewプラグインとは
Dataviewは、Obsidianのノート内に記録したデータをSQLに似たクエリ言語で集計・表示できるコミュニティプラグインだ。「過去30日間で習慣Aを達成した日数」「今月の運動記録の一覧」などを、Markdown内に書いたクエリで動的に表示できる。
デイリーノートを習慣トラッカーとして使う設計
習慣トラッキングの基本設計は「デイリーノート(日記ノート)への記録 + Dataviewによる集計」だ。
デイリーノートのテンプレート設計
Obsidianの「Templates」または「Templater」プラグインでデイリーノートのテンプレートを作成する。習慣チェックのセクションをテンプレートに含めておくことで、毎日自動的に記録フォームが用意される。
テンプレート例:
---
date: {{date}}
習慣_運動: false
習慣_読書: false
習慣_日記: false
気分:
---
## 今日の習慣チェック
- [ ] 運動(30分以上)
- [ ] 読書(10ページ以上)
- [ ] 日記・メモ
## メモ
フロントマターのプロパティ(習慣_運動: falseなど)は後のDataviewクエリで集計に使用する。チェックボックスにチェックを入れた後、対応するプロパティをtrueに変更する運用か、Templaterで自動変換する方法を選ぶ。
Dataviewクエリで習慣データを集計する
過去30日の習慣達成一覧
TABLE 習慣_運動, 習慣_読書, 習慣_日記
FROM "Daily Notes"
WHERE date >= date(today) - dur(30 days)
SORT date DESC
このクエリを任意のノート(例:「習慣トラッキングダッシュボード」)に書いておくと、過去30日のデイリーノートのデータが表形式で表示される。
今月の達成率を計算する
TABLE length(filter(rows.習慣_運動, (x) => x = true)) as "運動達成日数"
FROM "Daily Notes"
WHERE date >= date(today) - dur(30 days)
GROUP BY true
簡易カレンダー表示
DataviewのCALENDARクエリを使うと、達成日をカレンダー表示できる。
CALENDAR date
FROM "Daily Notes"
WHERE 習慣_運動 = true
習慣トラッキングをObsidianに統合するメリット
学習記録・読書メモと同じ場所で管理できる
PKMとして使うObsidianには、すでに読書メモ・学習記録・プロジェクトメモなどが蓄積されている。習慣記録を同じシステムに統合すると、「今日の運動の達成とその日の読書量の相関」などの横断的な分析が可能になる。
クラウド依存がない
データはローカルに保存されるため、サービス終了やデータ消失のリスクがない。長期的な習慣記録の保管場所として安心して使える。
音声記録との組み合わせ
習慣のチェックはDataviewで視覚化できるが、「なぜできなかったか」「その日の気分はどうだったか」という定性情報は、テキストより音声の方が記録しやすいことがある。
デイリーノートに「今日のメモ」セクションを作り、トークマネでの音声記録の要点をテキストにして貼り付ける運用や、音声ファイルのパスをノートに記録するだけでも、定量(習慣チェック)と定性(音声振り返り)の両方が同じノートに集まる。
まとめ
ObsidianとDataviewを使った習慣トラッキングは、デイリーノートのフロントマターに習慣データを記録し、Dataviewクエリで集計・可視化するシステムだ。すでにObsidianを使っているPKMユーザーにとって、新しいツールを増やさずに習慣管理を統合できる点が最大のメリットだ。まずはデイリーノートに3つの習慣チェックを追加することから始めてみよう。
