Update app.py
Browse files
app.py
CHANGED
@@ -243,23 +243,32 @@ commissioners = st.multiselect("Add commissioners:", options=[], default=[])
|
|
243 |
add_commissioner = st.text_input("New commissioner name:")
|
244 |
if add_commissioner:
|
245 |
commissioners.append(add_commissioner)
|
|
|
|
|
246 |
|
247 |
# Schedule Generation
|
248 |
if st.button("Generate Schedule"):
|
249 |
st.session_state.schedule_df = create_schedule(st.session_state.num_teams, st.session_state.num_conferences, st.session_state.num_inter_games)
|
250 |
-
if st.session_state.schedule_df is not None:
|
251 |
st.session_state.schedule_df['Date'] = pd.to_datetime(st.session_state.schedule_df['Date'])
|
|
|
|
|
|
|
|
|
252 |
|
253 |
|
254 |
# Schedule Viewing
|
255 |
st.header("View Schedule")
|
256 |
conference_selector = st.selectbox("Select conference to view schedule:", options=["All"] + [f"Conference {chr(65+i)}" for i in range(st.session_state.num_conferences)])
|
257 |
-
if st.session_state.schedule_df is not None:
|
258 |
if conference_selector == "All":
|
259 |
st.dataframe(st.session_state.schedule_df)
|
260 |
else:
|
261 |
filtered_schedule = st.session_state.schedule_df[(st.session_state.schedule_df["Team 1"].str.startswith(conference_selector)) | (st.session_state.schedule_df["Team 2"].str.startswith(conference_selector))]
|
262 |
st.dataframe(filtered_schedule)
|
|
|
|
|
|
|
263 |
|
264 |
# Analytics & Comparisons
|
265 |
st.header("Analytics & Comparisons")
|
@@ -267,10 +276,15 @@ analytics_option = st.selectbox("Choose an analysis type:", ["Team Workload Anal
|
|
267 |
st.session_state.historical_data['Date'] = pd.to_datetime(st.session_state.historical_data['Date'])
|
268 |
|
269 |
if analytics_option == "Team Workload Analysis":
|
270 |
-
st.
|
271 |
-
|
272 |
-
|
273 |
-
st.
|
|
|
|
|
|
|
|
|
|
|
274 |
|
275 |
elif analytics_option == "Match Distribution":
|
276 |
st.subheader("Historical Data")
|
|
|
243 |
add_commissioner = st.text_input("New commissioner name:")
|
244 |
if add_commissioner:
|
245 |
commissioners.append(add_commissioner)
|
246 |
+
st.session_state.commissioners = commissioners # Make sure to update session state
|
247 |
+
|
248 |
|
249 |
# Schedule Generation
|
250 |
if st.button("Generate Schedule"):
|
251 |
st.session_state.schedule_df = create_schedule(st.session_state.num_teams, st.session_state.num_conferences, st.session_state.num_inter_games)
|
252 |
+
if st.session_state.schedule_df is not None and not st.session_state.schedule_df.empty:
|
253 |
st.session_state.schedule_df['Date'] = pd.to_datetime(st.session_state.schedule_df['Date'])
|
254 |
+
st.success("Schedule generated successfully!")
|
255 |
+
print("Stored schedule in session state.")
|
256 |
+
else:
|
257 |
+
st.error("Failed to generate schedule. Please check input parameters.")
|
258 |
|
259 |
|
260 |
# Schedule Viewing
|
261 |
st.header("View Schedule")
|
262 |
conference_selector = st.selectbox("Select conference to view schedule:", options=["All"] + [f"Conference {chr(65+i)}" for i in range(st.session_state.num_conferences)])
|
263 |
+
if st.session_state.schedule_df is not None and not st.session_state.schedule_df.empty:
|
264 |
if conference_selector == "All":
|
265 |
st.dataframe(st.session_state.schedule_df)
|
266 |
else:
|
267 |
filtered_schedule = st.session_state.schedule_df[(st.session_state.schedule_df["Team 1"].str.startswith(conference_selector)) | (st.session_state.schedule_df["Team 2"].str.startswith(conference_selector))]
|
268 |
st.dataframe(filtered_schedule)
|
269 |
+
else:
|
270 |
+
st.write("No schedule available. Please generate the schedule.")
|
271 |
+
|
272 |
|
273 |
# Analytics & Comparisons
|
274 |
st.header("Analytics & Comparisons")
|
|
|
276 |
st.session_state.historical_data['Date'] = pd.to_datetime(st.session_state.historical_data['Date'])
|
277 |
|
278 |
if analytics_option == "Team Workload Analysis":
|
279 |
+
if st.session_state.historical_data is not None and not st.session_state.historical_data.empty:
|
280 |
+
st.subheader("Historical Data")
|
281 |
+
st.pyplot(team_workload_analysis(st.session_state.historical_data))
|
282 |
+
if st.session_state.schedule_df is not None and not st.session_state.schedule_df.empty:
|
283 |
+
st.subheader("Current Data")
|
284 |
+
st.pyplot(team_workload_analysis(st.session_state.schedule_df))
|
285 |
+
else:
|
286 |
+
st.warning("No current data to display. Generate the schedule first.")
|
287 |
+
|
288 |
|
289 |
elif analytics_option == "Match Distribution":
|
290 |
st.subheader("Historical Data")
|