Spaces:
Running
Running
James McCool
Update Streamlit app to sort display frame by 'Binom_xHR' before rendering, enhancing data presentation and allowing for better visibility of key metrics.
30e8a79
import numpy as np | |
import pandas as pd | |
import streamlit as st | |
import pymongo | |
import os | |
st.set_page_config(layout="wide") | |
def init_conn(): | |
uri = os.getenv('mongo_uri') | |
client = pymongo.MongoClient(uri, retryWrites=True, serverSelectionTimeoutMS=500000) | |
db = client["MLB_Database"] | |
return db | |
db = init_conn() | |
def init_baselines(): | |
collection = db["HR_Table"] | |
cursor = collection.find() | |
raw_display = pd.DataFrame(cursor) | |
raw_display.rename(columns={"Names": "Player"}, inplace = True) | |
raw_frame = raw_display.drop(columns=['_id']).drop_duplicates(subset='Player') | |
return raw_frame | |
hr_frame = init_baselines() | |
st.title("HR Finder Table") | |
disp_options = st.radio("Display options:", options = ['Exclude DFS Info', 'Include DFS Info'], key='display_options') | |
if disp_options == 'Exclude DFS Info': | |
st.session_state['disp_frame'] = hr_frame.drop(columns=['Salary', 'Position', 'FD_Position', 'Order']) | |
else: | |
st.session_state['disp_frame'] = hr_frame.sort_values(by='Binom_xHR', ascending=False) | |
if 'disp_frame' in st.session_state: | |
st.dataframe(st.session_state['disp_frame'].style.background_gradient(axis=0).background_gradient(cmap = 'RdYlGn').format(precision=2), height=1200, use_container_width = True, hide_index = True) |