fruitpicker01 commited on
Commit
27bcd5b
·
verified ·
1 Parent(s): 767573f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -19
app.py CHANGED
@@ -1,33 +1,45 @@
1
- import gradio as gr
2
-
3
  import gradio as gr
4
  import plotly.graph_objects as go
5
 
6
- # Функция для создания спидометра
7
- def create_gauge(value=76):
8
  fig = go.Figure(go.Indicator(
9
- mode="gauge+number",
10
  value=value,
11
- title={'text': "Success Rate"},
12
- gauge={'axis': {'range': [0, 100]},
13
- 'bar': {'color': "darkblue"},
14
- 'steps': [{'range': [0, 50], 'color': "lightgray"},
15
- {'range': [50, 75], 'color': "yellow"},
16
- {'range': [75, 100], 'color': "green"}],
17
- 'threshold': {'line': {'color': "red", 'width': 4}, 'thickness': 0.75, 'value': 76}}
 
 
 
 
 
 
 
 
 
 
 
 
18
  ))
19
 
20
- fig.update_layout(height=300)
 
 
 
 
21
  return fig
22
 
23
- # Функция для отображения графика в Gradio
24
- def show_gauge():
25
- return create_gauge(76)
26
 
27
- # Создание интерфейса Gradio
28
  with gr.Blocks() as demo:
29
- gr.Markdown("### Спидометр с вероятностью успеха")
30
  output = gr.Plot(label="Success Rate Gauge")
31
- demo.load(fn=show_gauge, inputs=[], outputs=output)
32
 
33
  demo.launch()
 
 
 
1
  import gradio as gr
2
  import plotly.graph_objects as go
3
 
4
+ def create_fancy_gauge(value=76):
 
5
  fig = go.Figure(go.Indicator(
6
+ mode="gauge+number+delta", # Добавим дельту для сравнения
7
  value=value,
8
+ title={'text': "Success Rate", 'font': {'size': 24}},
9
+ delta={'reference': 70, 'increasing': {'color': "green"}},
10
+ gauge={
11
+ 'axis': {'range': [0, 100], 'tickwidth': 1, 'tickcolor': "darkblue"},
12
+ 'bar': {'color': "darkblue"},
13
+ 'bgcolor': "white",
14
+ 'borderwidth': 2,
15
+ 'bordercolor': "gray",
16
+ 'steps': [
17
+ {'range': [0, 50], 'color': 'lightgray'},
18
+ {'range': [50, 75], 'color': 'yellow'},
19
+ {'range': [75, 100], 'color': 'green'}
20
+ ],
21
+ 'threshold': {
22
+ 'line': {'color': "red", 'width': 4},
23
+ 'thickness': 0.75,
24
+ 'value': value
25
+ }
26
+ }
27
  ))
28
 
29
+ fig.update_layout(
30
+ font={'color': "darkblue", 'family': "Arial"},
31
+ height=400,
32
+ margin={'t': 0, 'b': 0}
33
+ )
34
  return fig
35
 
36
+ # Gradio интерфейс для отображения
37
+ def show_fancy_gauge():
38
+ return create_fancy_gauge(76)
39
 
 
40
  with gr.Blocks() as demo:
41
+ gr.Markdown("### Улучшенный спидометр с вероятностью успеха")
42
  output = gr.Plot(label="Success Rate Gauge")
43
+ demo.load(fn=show_fancy_gauge, inputs=[], outputs=output)
44
 
45
  demo.launch()