Skip to content

Commit 7734291

Browse files
committed
Edit variable selection panel
1 parent 843e479 commit 7734291

File tree

9 files changed

+31
-36
lines changed

9 files changed

+31
-36
lines changed

src/Image_Processing/fMRI/xcp_d

Submodule xcp_d updated 169 files

src/viewer/pages/plot_sMRI_vars_study.py

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -231,35 +231,35 @@ def panel_select() -> None:
231231
)
232232

233233
if sel_cat is None:
234-
sel_vars = []
234+
sel_vars_cat = []
235235
else:
236-
sel_vars = dict_categories[sel_cat]
237-
sel_vars = [x for x in sel_vars if x in df.columns]
236+
sel_vars_cat = dict_categories[sel_cat]
237+
sel_vars_cat = [x for x in sel_vars_cat if x in df.columns]
238238

239239
with cols_tmp[1]:
240-
sel_vars = st.multiselect(
240+
sel_vars_cat = st.multiselect(
241241
"Select variables from this category",
242-
sel_vars,
243-
sel_vars,
242+
sel_vars_cat,
243+
sel_vars_cat,
244244
help="The list shows variables that are present in the data file! If the list is empty, it means that none of the variables in this category are present in the data file.",
245245
)
246246

247247
with cols_tmp[2]:
248248
if st.button("Add selected variables"):
249-
sel_vars_uniq = [
250-
v for v in sel_vars if v not in st.session_state.plot_sel_vars
249+
sel_vars_cat_uniq = [
250+
v for v in sel_vars_cat if v not in st.session_state.plot_sel_vars
251251
]
252-
st.session_state.plot_sel_vars += sel_vars_uniq
252+
st.session_state.plot_sel_vars += sel_vars_cat_uniq
253253

254-
sel_vars_all = st.multiselect(
254+
sel_vars_final = st.multiselect(
255255
"Select final variables to keep",
256256
st.session_state.plot_sel_vars,
257257
st.session_state.plot_sel_vars,
258258
)
259259

260260
# Select the ones in current dataframe
261-
sel_vars_all = [x for x in sel_vars_all if x in df.columns]
262-
st.session_state.plot_sel_vars = sel_vars_all
261+
sel_vars_final = [x for x in sel_vars_final if x in df.columns]
262+
st.session_state.plot_sel_vars = sel_vars_final
263263

264264
if st.button("Select variables"):
265265
if "MRID" not in st.session_state.plot_sel_vars:
@@ -269,14 +269,15 @@ def panel_select() -> None:
269269
sel_vars = st.session_state.plot_sel_vars
270270
st.success(f"Selected variables: {sel_vars}")
271271

272+
# Add centile vars
272273
vars_cent = []
273274
for tmp_var in sel_vars:
274-
if tmp_var + '_centiles' in df.columns:
275-
vars_cent.append(tmp_var + '_centiles')
276-
sel_vars = sel_vars + vars_cent
277-
st.session_state.plot_sel_vars = sel_vars
278-
279-
df = df[st.session_state.plot_sel_vars]
275+
c_var=tmp_var + '_centiles'
276+
if c_var in df.columns and c_var not in sel_vars:
277+
vars_cent.append(c_var)
278+
sel_vars_wcent = sel_vars + vars_cent
279+
280+
df = df[sel_vars_wcent]
280281
st.session_state.plot_var["df_data"] = df
281282

282283
with st.expander('Show selected data', expanded=False):
@@ -291,7 +292,7 @@ def panel_select() -> None:
291292
)
292293
utilss.reset_plots()
293294
st.session_state.is_updated["csv_plot"] = False
294-
295+
st.session_state.plot_sel_vars = []
295296

296297
s_title="Variable Selection"
297298
s_text="""

src/viewer/pages/workflow_sMRI_MLScores.py

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -76,15 +76,6 @@ def panel_indata() -> None:
7676
if not st.session_state._check_ml_in:
7777
return
7878

79-
show_panel_int1 = st.checkbox(
80-
f":material/upload: {msg} T1 Images {icon}",
81-
disabled=not st.session_state.flags["dir_out"],
82-
key='_check_ml_in',
83-
value=st.session_state.checkbox['ml_in']
84-
)
85-
if not st.session_state._check_ml_in:
86-
return
87-
8879
with st.container(border=True):
8980
if st.session_state.app_type == "cloud":
9081
utilst.util_upload_file(
@@ -139,9 +130,11 @@ def panel_indata() -> None:
139130
if f_check == 0:
140131
st.session_state.flags["csv_dlmuse+demog"] = True
141132
st.success(m_check, icon=":material/thumb_up:")
133+
st.session_state.flags["csv_mlscores"] = True
142134
else:
143135
st.session_state.flags["csv_dlmuse+demog"] = False
144136
st.error(m_check, icon=":material/thumb_down:")
137+
st.session_state.flags["csv_mlscores"] = False
145138

146139
# Check the input data
147140
@st.dialog("Input data requirements") # type:ignore
@@ -199,8 +192,8 @@ def panel_run() -> None:
199192
"""
200193
icon = st.session_state.icon_thumb[st.session_state.flags["csv_mlscores"]]
201194
st.checkbox(
202-
f":material/new_label: Run DLMUSE {icon}",
203-
disabled=not st.session_state.flags["dir_t1"],
195+
f":material/new_label: Run MLScores {icon}",
196+
disabled=not st.session_state.flags["csv_mlscores"],
204197
key='_check_ml_run',
205198
value=st.session_state.checkbox['ml_run']
206199
)

src/viewer/utils/utils_plot.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,7 @@ def on_hvar_change():
196196
key=f"plot_hvar_{plot_id}"
197197
sel_val=st.session_state[key]
198198
df_plots.loc[plot_id, "hvar"]=sel_val
199+
df_plots.loc[plot_id, "hvals"]=[]
199200

200201
hind = get_index_in_list(list_cols_ext, df_plots.loc[plot_id, "hvar"])
201202
st.selectbox(

0 commit comments

Comments
 (0)