Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| from st_cytoscape import cytoscape | |
| # elements = [ | |
| # {"data": {"id": "X"}, "selected": True, "selectable": False}, | |
| # {"data": {"id": "Y"}}, | |
| # {"data": {"id": "Z"}}, | |
| # {"data": {"source": "X", "target": "Y", "id": "X➞Y"}}, | |
| # {"data": {"source": "Z", "target": "Y", "id": "Z➞Y"}}, | |
| # {"data": {"source": "Z", "target": "X", "id": "Z➞X"}}, | |
| # ] | |
| import requests | |
| import json | |
| url = "https://raw.githubusercontent.com/cytoscape/cytoscape.js/refs/heads/master/documentation/demos/tokyo-railways/tokyo-railways.json" | |
| response = requests.get(url) | |
| data = json.loads(response.text) | |
| elements = data['elements']['nodes'] + data['elements']['edges'] | |
| stylesheet = [ | |
| {"selector": "node", | |
| "style": {"label": "data(station_name)", "width": 10, "height": 10}}, | |
| # { | |
| # "selector": "edge", | |
| # "style": { | |
| # "width": 3, | |
| # "curve-style": "bezier", | |
| # "target-arrow-shape": "triangle", | |
| # }, | |
| # }, | |
| ] | |
| selected = cytoscape(elements, stylesheet, width="100%", height="540px", layout={"name": "preset"}, key="graph") | |
| print(selected) | |
| st.markdown("**Selected nodes**: %s" % (", ".join(selected["nodes"]))) | |
| st.markdown("**Selected edges**: %s" % (", ".join(selected["edges"]))) |