harishB97 commited on
Commit
c86f6cb
·
verified ·
1 Parent(s): 45af18b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +54 -4
app.py CHANGED
@@ -1,7 +1,57 @@
1
  import gradio as gr
 
 
2
 
3
- def greet(name):
4
- return "Hello " + name + "!!"
 
 
5
 
6
- iface = gr.Interface(fn=greet, inputs="text", outputs="text")
7
- iface.launch()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  import gradio as gr
2
+ import igraph as ig
3
+ import plotly.graph_objects as go
4
 
5
+ def create_plotly_tree():
6
+ # Create an igraph tree
7
+ g = ig.Graph.Tree(7, 2) # Example tree
8
+ lay = g.layout('rt') # Reingold-Tilford layout
9
 
10
+ # Plotly setup
11
+ edge_x = []
12
+ edge_y = []
13
+ for edge in g.get_edgelist():
14
+ x0, y0 = lay[edge[0]]
15
+ x1, y1 = lay[edge[1]]
16
+ edge_x.extend([x0, x1, None])
17
+ edge_y.extend([y0, y1, None])
18
+
19
+ edge_trace = go.Scatter(
20
+ x=edge_x, y=edge_y,
21
+ line=dict(width=0.5, color='#888'),
22
+ hoverinfo='none',
23
+ mode='lines')
24
+
25
+ node_x = [lay[k][0] for k in range(len(lay))]
26
+ node_y = [lay[k][1] for k in range(len(lay))]
27
+
28
+ node_trace = go.Scatter(
29
+ x=node_x, y=node_y,
30
+ mode='markers',
31
+ hoverinfo='text',
32
+ marker=dict(showscale=False, size=10, color='#850', line_width=2))
33
+
34
+ fig = go.Figure(data=[edge_trace, node_trace],
35
+ layout=go.Layout(
36
+ showlegend=False,
37
+ hovermode='closest',
38
+ margin=dict(b=0, l=0, t=0, r=0),
39
+ xaxis=dict(showgrid=False, zeroline=False, showticklabels=False),
40
+ yaxis=dict(showgrid=False, zeroline=False, showticklabels=False))
41
+ )
42
+
43
+ return fig
44
+
45
+ def setup_interface():
46
+ iface = gr.Interface(
47
+ fn=create_plotly_tree,
48
+ inputs=[],
49
+ outputs=gr.Plotly(),
50
+ title="Interactive Tree Visualization"
51
+ )
52
+ return iface
53
+
54
+ # Launch the interface
55
+ if __name__ == "__main__":
56
+ iface = setup_interface()
57
+ iface.launch()