fisios, QS, aucs

adicion de gauges de fisiometrias, QS.
cambio de comida/glucómetro a AUCs.
parent 79992256
......@@ -4,7 +4,7 @@ import plotly.graph_objects as go
import plotly.express as px
data = (
pd.read_csv("inventarioA.csv")
pd.read_csv("inventario.csv")
)
......@@ -40,7 +40,7 @@ app.layout = html.Div(
),
html.P(
children=(
"Recuento de los datos asociados a cada participante "
"Recuento de los datos asociados a " + str(len(data.index)) + " participantes "
),
className="header-description",
),
......@@ -48,14 +48,38 @@ app.layout = html.Div(
className="header",
),
html.Div(children=[
html.Div(children="Etapa", className="menu-title"),
dcc.Dropdown(
id="etapaSel",
options=[
{"label":1, "value":1},
{"label":2, "value":2},
{"label":3, "value":3},
{"label":"Global", "value":99}
],
# options=[
# {
# "label": etapa,
# "value": etapa,
# }
# for etapa in [1,2,3]
# ],
value=99,
clearable=False,
searchable=False,
className="dropdown",
),
],
),
html.Div(children=[
html.Div(children=[
"Min. Comidas",
"Selectedfoods",
dcc.Slider(
id="min_comida",
min=1,
max=Comidas_totales_e,
value=Comidas_totales_e,
# marks={10:"babjo", 50:"medio", 100:"alto"}
marks={1:"1",10:"10", 42:"42", Comidas_totales_e:str(Comidas_totales_e)}
),
"Dias con Glucómetro",
dcc.Slider(
......@@ -63,24 +87,49 @@ app.layout = html.Div(
min=1,
max=Glucometro_e,
value=Glucometro_e,
#marks={10:"low", 50:"medium", 100:"alto"})
marks={1:"1", 14:"14", 28:"28", 42:"+42"}
),
"Visitas",
"AUCs",
dcc.Slider(
id="min_visitas",
id="min_aucs",
min=1,
max=Comidas_totales_e,
value=Comidas_totales_e,
marks={1:"1", 10:"10", 42:"42", Comidas_totales_e:str(Comidas_totales_e)}
),
"Microbiota",
dcc.Slider(
id="min_microbiota",
min=1,
max=Visitas_e,
value=Visitas_e,
marks={1:"1", 2:"2", 3:"3", 4:"4"}
),
"Microbiota",
"Fisiometría",
dcc.Slider(
id="min_microbiota",
id="min_fismet",
min=1,
max=Visitas_e,
value=Visitas_e,
marks={1:"1", 2:"2", 3:"3", 4:"4"}
),
"qs",
dcc.Slider(
id="min_qs",
min=1,
max=Visitas_e,
value=Visitas_e,
marks={1:"1", 2:"2", 3:"3", 4:"4"}
),
"Visitas",
dcc.Slider(
id="min_visitas",
min=1,
max=Visitas_e,
value=Visitas_e,
marks={1:"1", 2:"2", 3:"3", 4:"4"}
)
),
]
),
......@@ -116,13 +165,17 @@ app.layout = html.Div(
@app.callback(
Output("multi-chart", "figure"),
Input("etapaSel", "value"),
Input("min_comida", "value"),
Input("min_glucosa", "value"),
Input("min_microbiota", "value"),
Input("min_aucs", "value"),
Input("min_microbiota", "value"),
Input("min_fismet", "value"),
Input("min_qs", "value"),
Input("min_visitas", "value"),
)
def update_charts(min_comida, min_glucosa, min_microbiota, min_visitas):
def update_charts(etapaSel,min_comida, min_glucosa, min_aucs, min_microbiota, min_fismet,min_qs, min_visitas):
total_data = len(data.index)
gauges = {
'shape': "bullet",
......@@ -160,11 +213,20 @@ def update_charts(min_comida, min_glucosa, min_microbiota, min_visitas):
gauge = gauges
))
medibles_data = data.query("medibles >= @min_comida")
if etapaSel == 1:
medibles_data = data.query("FoodsE1 >= @min_aucs")
if etapaSel == 2:
medibles_data = data.query("FoodsE2 >= @min_aucs")
if etapaSel == 3:
medibles_data = data.query("FoodsE3 >= @min_aucs")
if etapaSel == 99:
medibles_data = data.query("medibles >= @min_aucs")
multi.add_trace(go.Indicator(
value = 100 * medibles_data["medibles"].count() / Total_pacientes,
domain = {'x': [0.25, 1], 'y': [0.7, 0.8]},
title = {'text': "Comidas/glucómetro"},
title = {'text': "AUCs"},
mode = modes,
number = numbers,
gauge = gauges
......@@ -191,6 +253,29 @@ def update_charts(min_comida, min_glucosa, min_microbiota, min_visitas):
gauge = gauges
))
fismet_data = data.query("FISMET >= @min_fismet")
multi.add_trace(go.Indicator(
value = 100 * fismet_data["medibles"].count() / Total_pacientes,
# value = min_microbiota,
domain = {'x': [0.25, 1], 'y': [0.4, 0.5]},
title = {'text': "Fisiomet"},
mode = modes,
number = numbers,
gauge = gauges
))
qs_data = data.query("QS >= @min_qs")
multi.add_trace(go.Indicator(
value = 100 * qs_data["medibles"].count() / Total_pacientes,
# value = min_microbiota,
domain = {'x': [0.25, 1], 'y': [0.3, 0.4]},
title = {'text': "QS"},
mode = modes,
number = numbers,
gauge = gauges
))
visitas_data = data.query("Nvisitas >= @min_visitas")
multi.add_trace(go.Indicator(
value = 100 * visitas_data["medibles"].count() / Total_pacientes,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment