📝
Dashを用いてダッシュボードを作成しました
こんにちは、理学療法士・トレーナーとして活動しながら、個人でソフトウェアを開発しているだいじろうです
わたしたち理学療法士は、臨床業務のなかでデータ分析をおこなうことは少なくありません
臨床研究などの環境が恵まれている施設であれば、さまざまなデータ分析ソフトが導入されていたりするのですが、そういう施設は少ないと思います
そういった恵まれた環境にない医療・介護従事者でも気軽にデータ分析ができればなと思い、ダッシュボードを作成してみました
MediSight
これから少しずつ機能を充実させていきたいなと思います
無料でお使いいただけますので、ご意見・ご要望などをいただけると幸いです
ということで、忘備録としてDashについて学んだことを残していきたいと思います
Dashの基本コード
以下のサイトを参考にしていきます
まずはHello Worldの表示です
app.pyに以下のコードを記載します
app.py
# 必要なモジュールのインポート
from dash import Dash, html
# アプリの定義
app = Dash(__name__)
# アプリのレイアウト|グラフの表示
app.layout = html.Div(children=[
html.H1(children='Hello World'),
])
# アプリの起動
if __name__ == '__main__':
app.run(debug=True)
ターミナルから実行します
$ python3 app.py
実行後に表示される http://127.0.0.1:8050/ にアクセスします
こんな感じです
グラフの表示
plotlyによってグラフの表示も簡単にできます
app.py
# 必要なモジュールのインポート
from dash import Dash, html, dcc
import plotly.express as px
import pandas as pd
# アプリの定義
app = Dash(__name__)
# データの作成
df = pd.DataFrame(
{
"name": ["Masahiro", "Takuya", "Goro", "Tsuyoshi", "Shingo"],
"height": [165, 176, 172, 170, 183]
}
)
# グラフの作成
fig = px.bar(
df,
x = "name",
y = "height"
)
# アプリのレイアウト
app.layout = html.Div(
[
html.H1(
'Hello Dash'
),
html.Div(
"とある男性グループの身長"
),
# グラフの表示
dcc.Graph(
id = 'example-graph',
figure = fig
)
]
)
# アプリの起動
if __name__ == '__main__':
app.run(debug = True)
”children =”は省略することができます
※これが省略されていることをしっておくと、後ほど出てくるOutputの部分が理解しやすいかもです
また、Dashでは、コードを変更すると自動で表示が更新されるので楽です
サイトをみているといろんなことができるようなので、これから本腰入れて勉強していきたいと思います
Discussion