awacke1's picture
Update app.py
06c55ed
raw
history blame
2.27 kB
import streamlit as st
import streamlit.components.v1 as components
import networkx as nx
import matplotlib.pyplot as plt
from pyvis.network import Network
import got
import numpy as np
import pandas as pd
df = pd.read_csv("testfile.csv")
@st.cache
def convert_df(df):
return df.to_csv().encode('utf-8')
csv = convert_df(df)
st.download_button(
"Press to Download",
csv,
"testfile.csv",
"text/csv",
key='download-csv'
)
st.title('Streamlit Visualization')
dataframe = pd.DataFrame(np.random.randn(10, 20),
columns = ('col %d' % i
for i in range(20)))
st.write(dataframe)
dataframe = pd.DataFrame(np.random.randn(10, 5),
columns = ('col %d' % i
for i in range(5)))
dataframe
st.write('This is a line_chart.')
st.line_chart(dataframe)
st.write('This is a area_chart.')
st.area_chart(dataframe)
st.write('This is a bar_chart.')
st.bar_chart(dataframe)
st.write('Map data')
data_of_map = pd.DataFrame(
np.random.randn(1000, 2) / [60, 60] + [36.66, -121.6],
columns = ['latitude', 'longitude'])
st.map(data_of_map)
image = Image.open('picture.jpg')
st.image(image, caption = 'This is a picture', use_column_width = True)
st.title('Pyvis VisJS DOTlang Legend')
Network(notebook=True)
# make Network show itself with repr_html
def net_repr_html(self):
nodes, edges, height, width, options = self.get_network_data()
html = self.template.render(height=height, width=width, nodes=nodes, edges=edges, options=options)
return html
Network._repr_html_ = net_repr_html
st.sidebar.title('Choose your favorite Graph')
option=st.sidebar.selectbox('select graph',('Simple','Karate', 'GOT'))
physics=st.sidebar.checkbox('add physics interactivity?')
got.simple_func(physics)
if option=='Simple':
HtmlFile = open("test.html", 'r', encoding='utf-8')
source_code = HtmlFile.read()
components.html(source_code, height = 900,width=900)
got.got_func(physics)
if option=='GOT':
HtmlFile = open("gameofthrones.html", 'r', encoding='utf-8')
source_code = HtmlFile.read()
components.html(source_code, height = 1200,width=1000)
got.karate_func(physics)
if option=='Karate':
HtmlFile = open("karate.html", 'r', encoding='utf-8')
source_code = HtmlFile.read()
components.html(source_code, height = 1200,width=1000)