見出し画像

Djangoで毎月の出費を分析できる家計簿アプリをつくろう!【応用編】

【更新内容】
・Djangoバージョン(2.1.7)でも動作確認済み(2019/3/17)

この技術ノートは、「Djangoで毎月の出費を分析できる家計簿アプリをつくろう!【基礎編】」の応用編となっています。

基礎編がまだの方は、以下の基礎編からチャレンジしてみてください。

さて、この技術ノートでは、「Djangoで毎月の出費を分析できる家計簿アプリをつくろう!【基礎編】」の応用編として以下の機能を実装していきます。

毎月の合計額推移を分析する折れ線グラフ

※家計簿テーブルに登録されている全データをもとに、月単位、カテゴリ毎の合計出費額を自動計算して月毎の合計金額推移の折れ線グラフを自動生成します。

※実際のデモは以下動画の後半部分を確認してみてください。

【本技術ノートの目次】

・このチュートリアルを通してできるようになること
・対象者
・サポート体制
・開発環境
・応用編(カテゴリ毎の合計金額割合の分析)


このチュートリアルを通してできるようになること

①データベース上の金額データをともに、Djangoを使った各種合計値を自動計算する機能実装ができるようになる。
②データベース上のデータを元に①で自動計算した結果をグラフ描画することができるようになる。
 →Django,JQueryを組み合わせたデータベース上の情報を動的にグラフ描画する方法を習得できます。
③家計簿アプリを自作して、毎月の出費の傾向分析を自動でできるようになる。

対象者

このチュートリアルのおすすめ対象者は、こんな人です。

1. Djangoで毎月の出費を分析できる家計簿アプリをつくろう!【基礎編】を終えている方。
2. Djangoの基礎は習得したが応用事例を学びたい人。
3. JQuery+Djangoを利用してデータベース上のデータを動的にグラフ描画する応用事例を学びたい方。

サポート体制

本記事に関する質問はいつでも受け付けています。
以下のいづれかの方法でお問い合わせいただければ返信致します。

・TwitterID「@shinya_hd」にDM
問い合わせサイトから質問
※業務都合上返信が遅れる場合があります。

開発環境

Windows10/Anaconda(python3.x)
※なお、本チュートリアルはPython3.6で動作確認済みです。

それでは、早速、家計簿アプリ開発の応用編を始めていきましょう!

まず最初に、基礎編で構築した家計簿アプリにカテゴリを4つ、6か月分程度のデータを登録しておいてください。
(必須ではありませんが、ある程度データがあったほうがグラフの見栄えがよくなります)

さて、具体的には以下のフローで実現していきます。

①http://127.0.0.1:8000/kakeibo/lineにアクセス
②views.pyのshow_line_grahp関数をCALL
③家計簿テーブルから全レコードを取得
④カテゴリリストデータの生成
⑤日付ラベルの取得(グラフのx軸となるデータ)
⑥月毎&カテゴリ毎の合計金額データセットの生成
⑦折れ線グラフのボーダーカラー色の設定
⑧計算結果をテンプレート(kakeibo_line.html)に渡す
⑨kakeibo_line.html上で折れ線グラフを表示。

基礎編にくらべるとかなりステップが増えましたね。
今回はかなり複雑なコードになってきますが、順を追って説明していきます。

まずは、実際のソースコードの流れを図にしましたので全体をイメージしてください。


全体の流れを把握したところで、1つ1つ実装手順を説明していきます。


ここから先は

33,987字 / 14画像
この記事のみ ¥ 500

主にITテクノロジー系に興味があります。 【現在興味があるもの】 python、Django,統計学、機械学習、ディープラーニングなど。 技術系ブログもやってます。 https://sinyblog.com/