💹

GWを消費してgrafana家計簿にサンキーダイアグラムを作った

に公開

概要

作ろうと去年から温めていた家計簿のサンキーダイアグラムを作成しました

GWの1日を消費してしまった、こういうのは勢いが大事

だいたいclaude sonnetにやってもらったけど指針出しや検算は慎重になった

使ってみた系の話で本文に技術的なものはほぼなくお気持ちメインになります

結果

grafanaのpluginを使用

https://grafana.com/grafana/plugins/netsage-sankey-panel/

こんな感じ

多段チャージの果てにiPhone 16eを購入した出費の表示になります

以下実装メモ

概念

家計簿レコードとして大まかに消費レコードとチャージレコードがある

支払い元には多段チャージの中にいるもの、最終段になるものがある

処理

チャージレコードと消費レコードを結合してひとつなぎにする

支払い方法はカラムにする

多段チャージの中にいるものは最長経路から固定カラムを用意し矛盾のないように配置する

  1. 最長経路が現金 -> Aカード -> Bpay -> Cpay -> Dマネー -> 交通費 の場合
  • 現金: source
  • Aカード: paymant1
  • Bpay: payment2
  • Cpay: payment3
  • Dマネー: payment4
  • 交通費: category
  1. このとき現金 -> Bカード -> Eマネー -> 食費 の場合
  • 現金: source
  • Bカード: payment1
  • Eマネー: payment4
  • 食費: category

2のケースでpayment1の次がpayment4になりpayment2, 3はNULLとなる

サンキー用のリネージでチャージレコード(source, dest)をsource, payment1~4, categoryに整形する

思ったこと

作成中

やっぱりデータを触る上で興味を持つこと、性質を知っておくことは大事

サンキー用のデータ整形もplanningはpluginのドキュメント読んで自力

claudeもリネージは何度も間違えているのであるべきを明示して修正の繰り返し

テストコードもclaudeが正しいと考えているテストを書いてくる、テストが意図通りの思想で作成されたとは限らない

結局AIコーディング一般論となってしまったなあ

成果物を見て

結局よく分からんという思い(苦笑)

サンキーは家計簿には向いていないのかもしれない

線がいくつも交差してしまってゴチャついてしまっている

ただ注目したいカテゴリ出費が全体のどれくらいというのが視覚的に分かるのが良い

データはいろんな図表で多角的に性質を知ることがとても大事

データをいじるのは楽しい

Discussion