Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -196,8 +196,32 @@ def create_leaderboard_component(dataframe, displayed_cols, hidden_cols=None, ca
|
|
196 |
print(f"--- End Debugging Tab: {title} ---")
|
197 |
# --- END DEBUG PRINTS ---
|
198 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
199 |
return Leaderboard(
|
200 |
-
value=filtered_df,
|
201 |
datatype=[c.type for c in fields(AutoEvalColumn) if c.name in filtered_df.columns], # Ajustar datatype às colunas presentes
|
202 |
select_columns=SelectColumns(
|
203 |
default_selection=displayed_cols,
|
|
|
196 |
print(f"--- End Debugging Tab: {title} ---")
|
197 |
# --- END DEBUG PRINTS ---
|
198 |
|
199 |
+
# --- Reordenar Colunas ---
|
200 |
+
current_cols = filtered_df.columns.tolist()
|
201 |
+
|
202 |
+
# Definir as colunas que devem vir primeiro
|
203 |
+
first_cols_desired = [AutoEvalColumn.model_type_symbol.name, AutoEvalColumn.model.name]
|
204 |
+
# Garantir que elas existem no dataframe atual
|
205 |
+
first_cols_actual = [c for c in first_cols_desired if c in current_cols]
|
206 |
+
|
207 |
+
# Obter as outras colunas
|
208 |
+
other_cols = [c for c in current_cols if c not in first_cols_actual]
|
209 |
+
|
210 |
+
# Priorizar as colunas que deveriam ser exibidas por padrão (exceto as primeiras)
|
211 |
+
other_displayed_cols = [c for c in displayed_cols if c in other_cols]
|
212 |
+
|
213 |
+
# Obter as colunas restantes (ocultas por padrão ou não especificadas em displayed_cols) e ordená-las
|
214 |
+
remaining_cols = sorted([c for c in other_cols if c not in other_displayed_cols])
|
215 |
+
|
216 |
+
# Montar a ordem final
|
217 |
+
final_order = first_cols_actual + other_displayed_cols + remaining_cols
|
218 |
+
|
219 |
+
# Aplicar a nova ordem
|
220 |
+
filtered_df = filtered_df[final_order]
|
221 |
+
# --- Fim Reordenar Colunas ---
|
222 |
+
|
223 |
return Leaderboard(
|
224 |
+
value=filtered_df, # Passar o DataFrame reordenado
|
225 |
datatype=[c.type for c in fields(AutoEvalColumn) if c.name in filtered_df.columns], # Ajustar datatype às colunas presentes
|
226 |
select_columns=SelectColumns(
|
227 |
default_selection=displayed_cols,
|