import gradio as gr import matplotlib as mpl from data import data_df from pitcher_overview import create_pitcher_overview # from pitcher_leaderboard import create_pitcher_leaderboard from player_team_leaderboard import create_pitcher_leaderboard, create_team_pitching_leaderboard from pitch_leaderboard import create_pitch_leaderboard from daily_weekly_leaderboard import create_daily_weekly_leaderboard_app from css import css mpl.use('Agg') latest_data_date = data_df['date'].max() with open('updated.txt') as f: updated = f.read().strip() limitations = '''**General Limitations** - As new players make their debut, some names may be missing or not translated/transliterated correctly. - IP is underestimated (does not count outs via caught stealing) ''' with open('acknowledgements.md', 'r') as f: acknowledgements = f.read() if __name__ == '__main__': with gr.Blocks(css=css) as app: with gr.Tab('Pitcher Overview'): create_pitcher_overview(data_df) with gr.Tab('Pitcher Leaderboard'): create_pitcher_leaderboard() with gr.Tab('Pitch Leaderboard'): create_pitch_leaderboard() with gr.Tab('Team Pitching Leaderboard'): create_team_pitching_leaderboard() with gr.Tab('Daily/Weekly Leaderboard'): create_daily_weekly_leaderboard_app(data_df) with gr.Tab('Acknowledgements'): gr.Markdown(acknowledgements) gr.Markdown('---') gr.Markdown(f'**Data up to:** {latest_data_date}') gr.Markdown(f'**Last updated:** {updated}') gr.Markdown(limitations) app.launch()