lbourdois commited on
Commit
43bb47f
·
verified ·
1 Parent(s): b6e2b7e

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +45 -0
app.py ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import pandas as pd
3
+ from datetime import datetime, timedelta
4
+
5
+ # Initialize data
6
+ data = {
7
+ "Date": pd.date_range(start="2023-01-01", end="2023-12-31", freq="D"),
8
+ "Chris": 0,
9
+ "Loïck": 0
10
+ }
11
+
12
+ df = pd.DataFrame(data)
13
+
14
+ def update_points(player, points, date):
15
+ global df
16
+ date = pd.to_datetime(date)
17
+ if player == "Chris":
18
+ df.loc[df["Date"] == date, "Chris"] += points
19
+ else:
20
+ df.loc[df["Date"] == date, "Loïck"] += points
21
+ return df
22
+
23
+ with gr.Blocks() as demo:
24
+ gr.Markdown("# Leaderboard")
25
+
26
+ with gr.Row():
27
+ player = gr.Dropdown(["Chris", "Loïck"], label="Fellow")
28
+ points = gr.Number(label="Points", value=1)
29
+ date = gr.Date(label="Date", value="2023-01-01")
30
+ update_btn = gr.Button("Update Points")
31
+
32
+ leaderboard = gr.DataFrame(label="Leaderboard", headers=["Date", "Chris", "Loïck"])
33
+
34
+ update_btn.click(
35
+ fn=update_points,
36
+ inputs=[player, points, date],
37
+ outputs=leaderboard
38
+ )
39
+
40
+ demo.load(
41
+ fn=lambda: df,
42
+ outputs=leaderboard
43
+ )
44
+
45
+ demo.launch()