Spaces:
Running
Running
Artur Słomowski
commited on
Commit
·
c8c7c16
1
Parent(s):
b18be2e
use pills instead of multiselect
Browse files- .gitignore +1 -0
- app.py +35 -8
.gitignore
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
venv
|
app.py
CHANGED
@@ -244,20 +244,47 @@ with tab1:
|
|
244 |
# Filter data based on selected providers
|
245 |
data = data[data["Model"].apply(lambda x: x.split('/')[0].lower()).isin(selected_providers)]
|
246 |
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
252 |
|
253 |
# Display data
|
254 |
styled_df_show = style_dataframe(data)
|
255 |
styled_df_show = styler(styled_df_show)
|
256 |
|
257 |
-
#
|
258 |
column_config = {}
|
259 |
|
260 |
-
#
|
261 |
if "Model" in styled_df_show.columns:
|
262 |
column_config["Model"] = st.column_config.TextColumn("Model", help="Model name", width="large") if "Model" in selected_columns else None
|
263 |
|
@@ -271,7 +298,7 @@ with tab1:
|
|
271 |
column_config[IMPLICATURES_AVERAGE_COLUMN_NAME] = st.column_config.NumberColumn(IMPLICATURES_AVERAGE_COLUMN_NAME) if IMPLICATURES_AVERAGE_COLUMN_NAME in selected_columns else None
|
272 |
|
273 |
if RESULTS_COLUMN_NAME in styled_df_show.columns:
|
274 |
-
# Results
|
275 |
column_config[RESULTS_COLUMN_NAME] = st.column_config.BarChartColumn(
|
276 |
"Bar chart of results", help="Summary of the results of each task",
|
277 |
y_min=0, y_max=5) if AVERAGE_COLUMN_NAME in selected_columns else None
|
|
|
244 |
# Filter data based on selected providers
|
245 |
data = data[data["Model"].apply(lambda x: x.split('/')[0].lower()).isin(selected_providers)]
|
246 |
|
247 |
+
|
248 |
+
# Define all possible columns
|
249 |
+
all_columns = {
|
250 |
+
"Model": "Model",
|
251 |
+
"Params": "Params",
|
252 |
+
AVERAGE_COLUMN_NAME: "Average",
|
253 |
+
IMPLICATURES_AVERAGE_COLUMN_NAME: "Impl. Avg",
|
254 |
+
SENTIMENT_COLUMN_NAME: "Sentiment",
|
255 |
+
UNDERSTANDING_COLUMN_NAME: "Understanding",
|
256 |
+
PHRASEOLOGY_COLUMN_NAME: "Phraseology",
|
257 |
+
TRICKY_QUESTIONS_COLUMN_NAME: "Tricky Questions"
|
258 |
+
}
|
259 |
+
|
260 |
+
# By default, all columns are selected
|
261 |
+
default_columns = list(all_columns.keys())
|
262 |
+
|
263 |
+
# Use pills to select visible columns in multi-selection mode
|
264 |
+
selected_column_labels = st.pills(
|
265 |
+
label="Visible columns",
|
266 |
+
options=list(all_columns.values()),
|
267 |
+
default=list(all_columns.values()), # Set all columns as default
|
268 |
+
selection_mode="multi", # Enable multi-selection mode
|
269 |
+
key="visible_columns_pills"
|
270 |
+
)
|
271 |
+
|
272 |
+
# Map selected labels back to column names
|
273 |
+
reverse_mapping = {v: k for k, v in all_columns.items()}
|
274 |
+
selected_columns = [reverse_mapping[label] for label in selected_column_labels]
|
275 |
+
|
276 |
+
# If nothing is selected, show all columns
|
277 |
+
if not selected_columns:
|
278 |
+
selected_columns = default_columns
|
279 |
|
280 |
# Display data
|
281 |
styled_df_show = style_dataframe(data)
|
282 |
styled_df_show = styler(styled_df_show)
|
283 |
|
284 |
+
# Customize column_config based on selected columns
|
285 |
column_config = {}
|
286 |
|
287 |
+
# Set configuration for all columns
|
288 |
if "Model" in styled_df_show.columns:
|
289 |
column_config["Model"] = st.column_config.TextColumn("Model", help="Model name", width="large") if "Model" in selected_columns else None
|
290 |
|
|
|
298 |
column_config[IMPLICATURES_AVERAGE_COLUMN_NAME] = st.column_config.NumberColumn(IMPLICATURES_AVERAGE_COLUMN_NAME) if IMPLICATURES_AVERAGE_COLUMN_NAME in selected_columns else None
|
299 |
|
300 |
if RESULTS_COLUMN_NAME in styled_df_show.columns:
|
301 |
+
# Show Results only if Average is selected
|
302 |
column_config[RESULTS_COLUMN_NAME] = st.column_config.BarChartColumn(
|
303 |
"Bar chart of results", help="Summary of the results of each task",
|
304 |
y_min=0, y_max=5) if AVERAGE_COLUMN_NAME in selected_columns else None
|