Pythonと本と子供と雑談と

いつからはじめても遅くない

【Python】Dashでマルチページのアプリを作ってherokuにあげた【Dash】

さて、Pythonの可視化フレームワークdashを超気に入っている中の人ですが、またその話です。

今回は、ちょっと前にマルチページのアプリを作ったのですが、herokuにあげられずどうしたらよいねん状態でしたが、今回は作り方を変えたらいつも通りのやり方で、簡単にherokuにあげられた報告です。

Python Kansai

その前に。新たなイベントを作ったのでお知らせです。その名もPython Kansaiです。関西のPythonの人集まりましょう!

関西ではいくつかのPythonのコミュニティが運営されているようですが、その運営は結構大変だったりするようです。ラッキーなことにはんなりPythonの会は今のところ、軌道に乗っている感じがあり、運営は自動運転なところがありますが、やはり、発表者いない問題とかハンズオンする人いない問題とか、色々あります。そんなことも、もっと大きめの交流できる場を作ったら解決できるんじゃないの?って話に、Pydata OsakaとはんなりPythonの可視化特会のあとなりまして、そのご粛々と開催できる方向に動き、ようやく、発表できる状況に至りました。

開催日は7月14日日曜日、時間は14時から17時半、場所は大阪イノベーションハブです!!!70人で募集を開始していますが、もっと入れます!!!

現在決定している講演は日本のPython第一人者の飯坂さん(1998年にPython入門の本を翻訳されています)による「Daskについて」と、ハカルスCTOの染田さんの「エッジAIとPython」が決定で、あと一本追加される予定です。

LT枠は10分で6本くらい行けるかなーという感じなので、LTしたい方も是非ご参加ください。交流からどんどんイノベーションを生み出していきたいものです!交流にはビールなどあるとはかどりますので、ドリンクスポンサーも募集中です(私はノンアルなんで飲みませんけどね。普段からテンション高いので大丈夫!)。

作品

さてまずは作品をあげておきましょう。ということですが、今週はちょっと時間がなく、前回お披露目した米国の金利データのダッシュボードを一つのアプリに纏めたという感じです。

ここでは初めのメニューページを出しています。ここから見たいページにリンクで飛べます。

このコードは前回提示したのと同じgithubのページにあります。一つのファイルに纏めて方式です。

github.com

複数ファイルに分けたものをアップしたいのですが、まだちょっとわからずでして・・・

www.mazarimono.net

マルチページ作り方

さてマルチページの作り方ですが、一つのファイルで作るので、ページごとのファイルを作って、それをコールバックで表示させるというだけです。

あと忘れていけないのは、app.layoutの中にないidをコールバックの指定に使うため、

app.config.suppress_callback_exceptions = True

を書くことを忘れないということです。で、各ページのレイアウトはそれはそれで作り、urlが指定されたらそのページの内容をコールバックで投げるという、まぁそんなに難しくない内容になっています。

というわけで、今後はどんどんこのページにアプリを追加していこうと画策しております。次の企画は考えてあってちょっとおもしろいかなぁと思っているのですが、作る時間がとれるかは謎なところがあり・・・

Check

さて、作るばかりでなく、反省点も上げておいて今後修正していきます。そうPDCAのCです。

  • まずフォントが基本設定のままであるところ。ちょっとおしゃれさに欠ける。直すこと。

  • 金利データをpandas_datareaderから読み込むの遅い!! API作って、一日一回更新して、それを使って。みたいなことを考えておりますが、やったことがないのと、調査時間が必要なので、早期の対応は難しいかもです。

  • イールドカーブを複数取れるようにしたい!!
    前回言ってて、これはやりたかったんですけど、どうしてか、シフト押して複数が取れるselectedDataを指定しても、そのデータが返してくれるデータが空っぽでしてできてませんね。なんかちょっと調べまする。

  • スマホ対応 うむ。頑張りたいけど、頑張らないとなぁと思いつつ、僕はチャートはPCで見る派なんで~で終わってしまっています。

という感じですかねぇ。というわけで最近は情報可視化とか、情報経済学とか読んでいます。なんかこの辺も総合力問われる感がありますね。というか、最近は全体的に総合力が問われる分野が多いですね。ブロックチェーンとかIoTなんかも。というわけで、クラウド勉強しながら、データの未来も勉強しながら、データベースも勉強しながら、Dashもちょいちょい新しい使い方をしながらな感じで、来週も生きていこうと思います。

今これを読んでいますがお勧めです。

ビューティフルビジュアライゼーション (THEORY/IN/PRACTICE)

ビューティフルビジュアライゼーション (THEORY/IN/PRACTICE)