James McCool commited on
Commit
4894b46
·
1 Parent(s): 60577ca

Add Gamelogs tab to display individual game data in app.py

Browse files

Introduced a new tab to show detailed game logs for players or teams. Modified init_team_data and init_player_data functions to return game log information, and updated the Streamlit interface to render these logs with gradient styling. This enhancement provides users with more granular insights into individual game performances.

Files changed (1) hide show
  1. app.py +11 -5
app.py CHANGED
@@ -382,7 +382,7 @@ def init_team_data(game_count, team, opponent, win_loss_settings, kill_predictio
382
 
383
  overall_team_data = pd.concat([overall_team_data, team_data])
384
 
385
- return overall_team_data.dropna().set_index('playername'), opp_boosts, results_dict
386
 
387
  @st.cache_data(ttl = 60)
388
  def init_player_data(game_count, players, opponent, win_loss_settings, kill_predictions, death_predictions, start_date, end_date):
@@ -603,7 +603,7 @@ def init_player_data(game_count, players, opponent, win_loss_settings, kill_pred
603
 
604
  overall_team_data = pd.concat([overall_team_data, team_data])
605
 
606
- return overall_team_data.dropna().set_index('playername'), opp_boosts, results_dict
607
 
608
  if st.button("Load/Reset Data", key='reset1'):
609
  st.cache_data.clear()
@@ -612,9 +612,9 @@ if st.button("Load/Reset Data", key='reset1'):
612
 
613
  if st.button("Run"):
614
  if data_type == "Team":
615
- st.session_state.team_data, st.session_state.opp_boost, st.session_state.results_dict = init_team_data(game_count, selected_team, selected_opponent, win_loss_settings, kill_predictions, death_predictions, start_date, end_date)
616
  else:
617
- st.session_state.team_data, st.session_state.opp_boost, st.session_state.results_dict = init_player_data(game_count, selected_players, selected_opponent, win_loss_settings, kill_predictions, death_predictions, start_date, end_date)
618
 
619
  st.session_state.player_summary = pd.DataFrame()
620
 
@@ -695,7 +695,7 @@ if st.button("Run"):
695
  st.session_state.overall_sim_df = pd.DataFrame(overall_sim_results)
696
  st.session_state.overall_sim_df = st.session_state.overall_sim_df.drop_duplicates(subset = ['Player', 'Stat'])
697
 
698
- tab1, tab2, tab3 = st.tabs(["Overall Data", "Individual Game Data", "Opponent Data"])
699
  with tab1:
700
  if 'player_summary' in st.session_state:
701
  st.subheader("Full Match Data")
@@ -775,3 +775,9 @@ with tab3:
775
  if 'opp_boost' in st.session_state:
776
  st.subheader("Opponent Boosts")
777
  st.dataframe(st.session_state.opp_boost.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(precision=2), use_container_width = True)
 
 
 
 
 
 
 
382
 
383
  overall_team_data = pd.concat([overall_team_data, team_data])
384
 
385
+ return overall_team_data.dropna().set_index('playername'), opp_boosts, results_dict, player_tables
386
 
387
  @st.cache_data(ttl = 60)
388
  def init_player_data(game_count, players, opponent, win_loss_settings, kill_predictions, death_predictions, start_date, end_date):
 
603
 
604
  overall_team_data = pd.concat([overall_team_data, team_data])
605
 
606
+ return overall_team_data.dropna().set_index('playername'), opp_boosts, results_dict, player_tables
607
 
608
  if st.button("Load/Reset Data", key='reset1'):
609
  st.cache_data.clear()
 
612
 
613
  if st.button("Run"):
614
  if data_type == "Team":
615
+ st.session_state.team_data, st.session_state.opp_boost, st.session_state.results_dict, st.session_state.gamelogs = init_team_data(game_count, selected_team, selected_opponent, win_loss_settings, kill_predictions, death_predictions, start_date, end_date)
616
  else:
617
+ st.session_state.team_data, st.session_state.opp_boost, st.session_state.results_dict, st.session_state.gamelogs = init_player_data(game_count, selected_players, selected_opponent, win_loss_settings, kill_predictions, death_predictions, start_date, end_date)
618
 
619
  st.session_state.player_summary = pd.DataFrame()
620
 
 
695
  st.session_state.overall_sim_df = pd.DataFrame(overall_sim_results)
696
  st.session_state.overall_sim_df = st.session_state.overall_sim_df.drop_duplicates(subset = ['Player', 'Stat'])
697
 
698
+ tab1, tab2, tab3, tab4 = st.tabs(["Overall Data", "Individual Game Data", "Opponent Data", "Gamelogs"])
699
  with tab1:
700
  if 'player_summary' in st.session_state:
701
  st.subheader("Full Match Data")
 
775
  if 'opp_boost' in st.session_state:
776
  st.subheader("Opponent Boosts")
777
  st.dataframe(st.session_state.opp_boost.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(precision=2), use_container_width = True)
778
+
779
+ with tab4:
780
+ if 'gamelogs' in st.session_state:
781
+ st.subheader("Gamelogs")
782
+ st.dataframe(st.session_state.gamelogs.head(100).style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(precision=2), use_container_width = True)
783
+