Spaces:
Runtime error
Runtime error
import streamlit as st | |
from graphviz import Digraph | |
# Initialize the graph | |
graph = Digraph(comment='Architectural Model') | |
# Add nodes to the graph | |
graph.node('data_layer', 'Data Layer') | |
graph.node('acr', 'Azure Container Registry') | |
graph.node('aks', 'Azure Kubernetes\n& Docker Container Pod\nwith Scalability') | |
graph.node('snowflake', 'Snowflake Instance') | |
graph.node('cosmos', 'Azure Cosmos\nDatabase') | |
graph.node('api', 'API Standard\n(using Uvicorn)') | |
graph.node('soar', 'SOAR Component\n(on Linux Python\nSlimbuster Docker)') | |
# Add edges to the graph | |
graph.edge('data_layer', 'acr') | |
graph.edge('acr', 'aks') | |
graph.edge('aks', 'snowflake') | |
graph.edge('aks', 'cosmos') | |
graph.edge('aks', 'api') | |
graph.edge('aks', 'soar') | |
# Define the Streamlit app | |
def app(): | |
st.title('Architectural Model') | |
# Draw the graph | |
st.graphviz_chart(graph.source) | |
# Add buttons to customize the graph | |
if st.button('Hide Data Layer'): | |
graph.node('data_layer', style='invisible') | |
if st.button('Hide Snowflake Instance'): | |
graph.node('snowflake', style='invisible') | |
if st.button('Hide SOAR Component'): | |
graph.node('soar', style='invisible') | |
# Run the Streamlit app | |
if __name__ == '__main__': | |
app() | |