James McCool commited on
Commit
041e021
·
1 Parent(s): 5369656

Enhance app.py by adding a new "Load/Reset Data" button in the main container and forms for Scoring Percentages, Player ROO, and Optimals sections, improving data management and user interaction. Streamline data loading process and session state management across tabs.

Browse files
Files changed (1) hide show
  1. app.py +18 -38
app.py CHANGED
@@ -115,11 +115,20 @@ def convert_df(array):
115
  return array.to_csv().encode('utf-8')
116
 
117
  with st.container():
118
- col1, col2 = st.columns([3, 3])
119
  with col1:
120
  view_var = st.selectbox("Select view", ["Simple", "Advanced"], key='view_var')
121
  with col2:
122
  site_var = st.selectbox("What site do you want to view?", ('Draftkings', 'Fanduel'), key='site_var')
 
 
 
 
 
 
 
 
 
123
 
124
  tab1, tab2, tab3 = st.tabs(["Scoring Percentages", "Player ROO", "Optimals"])
125
 
@@ -129,20 +138,10 @@ hold_display = roo_data
129
  with tab1:
130
  st.header("Scoring Percentages")
131
  with st.expander("Info and Filters"):
132
- col1, col2, col3 = st.columns([3, 3, 3])
133
- with col1:
134
- if st.button("Load/Reset Data", key='reset1'):
135
- st.cache_data.clear()
136
- roo_data, sd_roo_data, scoring_percentages = init_baselines()
137
- hold_display = roo_data
138
- dk_lineups = init_DK_lineups('Main')
139
- fd_lineups = init_FD_lineups('Main')
140
- for key in st.session_state.keys():
141
- del st.session_state[key]
142
- with col2:
143
  slate_var1 = st.radio("Which data are you loading?", ('Main Slate', 'Secondary Slate', 'All Games'))
144
- with col3:
145
  own_var1 = st.radio("How would you like to display team ownership?", ('Sum', 'Average'))
 
146
  st.title("Scoring Percentages")
147
  if view_var == "Simple":
148
  scoring_percentages = scoring_percentages[['Names', 'Avg Score', '8+ runs', 'Win Percentage']]
@@ -153,23 +152,11 @@ with tab1:
153
  with tab2:
154
  st.header("Player ROO")
155
  with st.expander("Info and Filters"):
156
- col1, col2, col3, col4 = st.columns([3, 3, 3, 3])
157
- with col1:
158
- if st.button("Load/Reset Data", key='reset2'):
159
- st.cache_data.clear()
160
- roo_data, sd_roo_data, scoring_percentages = init_baselines()
161
- hold_display = roo_data
162
- dk_lineups = init_DK_lineups('Main')
163
- fd_lineups = init_FD_lineups('Main')
164
- for key in st.session_state.keys():
165
- del st.session_state[key]
166
- with col2:
167
  slate_type_var2 = st.radio("Which slate type are you loading?", ('Regular', 'Showdown'))
168
- with col3:
169
  slate_var2 = st.radio("Which slate data are you loading?", ('Main', 'Secondary', 'Auxiliary'))
170
- with col4:
171
  pos_var2 = st.radio("Which position group would you like to view?", ('All', 'Pitchers', 'Hitters'))
172
-
173
  if slate_type_var2 == 'Regular':
174
  player_roo_raw = roo_data.copy()
175
  if site_var == 'Draftkings':
@@ -214,17 +201,10 @@ with tab2:
214
  with tab3:
215
  st.header("Optimals")
216
  with st.expander("Info and Filters"):
217
- if st.button("Load/Reset Data", key='reset3'):
218
- st.cache_data.clear()
219
- roo_data, sd_roo_data, scoring_percentages = init_baselines()
220
- hold_display = roo_data
221
- dk_lineups = init_DK_lineups('Main')
222
- fd_lineups = init_FD_lineups('Main')
223
- for key in st.session_state.keys():
224
- del st.session_state[key]
225
-
226
- slate_type_var3 = st.radio("Which slate type are you loading?", ('Regular', 'Showdown'))
227
- slate_var3 = st.radio("Which slate data are you loading?", ('Main', 'Secondary', 'Auxiliary'))
228
 
229
  if slate_type_var3 == 'Regular':
230
  if site_var == 'Draftkings':
 
115
  return array.to_csv().encode('utf-8')
116
 
117
  with st.container():
118
+ col1, col2, col3 = st.columns([3, 3, 3])
119
  with col1:
120
  view_var = st.selectbox("Select view", ["Simple", "Advanced"], key='view_var')
121
  with col2:
122
  site_var = st.selectbox("What site do you want to view?", ('Draftkings', 'Fanduel'), key='site_var')
123
+ with col3:
124
+ if st.button("Load/Reset Data", key='reset'):
125
+ st.cache_data.clear()
126
+ roo_data, sd_roo_data, scoring_percentages = init_baselines()
127
+ hold_display = roo_data
128
+ dk_lineups = init_DK_lineups('Main')
129
+ fd_lineups = init_FD_lineups('Main')
130
+ for key in st.session_state.keys():
131
+ del st.session_state[key]
132
 
133
  tab1, tab2, tab3 = st.tabs(["Scoring Percentages", "Player ROO", "Optimals"])
134
 
 
138
  with tab1:
139
  st.header("Scoring Percentages")
140
  with st.expander("Info and Filters"):
141
+ with st.form("Scoring Percentages"):
 
 
 
 
 
 
 
 
 
 
142
  slate_var1 = st.radio("Which data are you loading?", ('Main Slate', 'Secondary Slate', 'All Games'))
 
143
  own_var1 = st.radio("How would you like to display team ownership?", ('Sum', 'Average'))
144
+ submit_button = st.form_submit_button("Submit")
145
  st.title("Scoring Percentages")
146
  if view_var == "Simple":
147
  scoring_percentages = scoring_percentages[['Names', 'Avg Score', '8+ runs', 'Win Percentage']]
 
152
  with tab2:
153
  st.header("Player ROO")
154
  with st.expander("Info and Filters"):
155
+ with st.form("Player ROO"):
 
 
 
 
 
 
 
 
 
 
156
  slate_type_var2 = st.radio("Which slate type are you loading?", ('Regular', 'Showdown'))
 
157
  slate_var2 = st.radio("Which slate data are you loading?", ('Main', 'Secondary', 'Auxiliary'))
 
158
  pos_var2 = st.radio("Which position group would you like to view?", ('All', 'Pitchers', 'Hitters'))
159
+ submit_button = st.form_submit_button("Submit")
160
  if slate_type_var2 == 'Regular':
161
  player_roo_raw = roo_data.copy()
162
  if site_var == 'Draftkings':
 
201
  with tab3:
202
  st.header("Optimals")
203
  with st.expander("Info and Filters"):
204
+ with st.form("Optimals"):
205
+ slate_type_var3 = st.radio("Which slate type are you loading?", ('Regular', 'Showdown'))
206
+ slate_var3 = st.radio("Which slate data are you loading?", ('Main', 'Secondary', 'Auxiliary'))
207
+ submit_button = st.form_submit_button("Submit")
 
 
 
 
 
 
 
208
 
209
  if slate_type_var3 == 'Regular':
210
  if site_var == 'Draftkings':