Exemplo n.º 1
0
"""This demo is run through Streamlit Sharing."""

import streamlit as st

try:
    import streamlit_analytics
except ImportError:
    # Install streamlit-analytics on first run (not included in requirements.txt).
    import subprocess
    import sys

    subprocess.check_call(
        [sys.executable, "-m", "pip", "install", "streamlit_analytics"])
    import streamlit_analytics

with streamlit_analytics.track():
    st.title(
        "Demo app for [streamlit-analytics](https://github.com/jrieke/streamlit-analytics)"
    )
    name = st.text_input("Write your name")
    fav = st.selectbox("Select your favorite", ["cat", "dog", "flower"])
    clicked = st.button("Click me")
    if clicked:
        st.write(
            f"Hello {name}, here's a {fav} for you: :{fav.replace('flower', 'sunflower')}:"
        )

    st.write("")
    st.write(
        "...and now add `?analytics=on` to the URL to see the analytics dashboard 👀"
    )
Exemplo n.º 2
0
import networkx as nx
import plotly_express as px
import streamlit_analytics
from IPython.core.display import HTML

st.set_page_config(page_title='NFL Mock Draft Database',
                   page_icon='football',
                   layout='wide',
                   initial_sidebar_state='collapsed')


def path_to_image_html(path):
    return '<img src="' + path + '" width="60" >'


with streamlit_analytics.track(unsafe_password="******"):
    st.markdown(
        "<h1 style='text-align: center; color: black;'>NFL Mock Draft Database</h1>",
        unsafe_allow_html=True)
    st.markdown(
        "<h4 style='text-align: center; color: black;'>Taking a look at a number of public NFL mock drafts to identify trends and relationships</h4>",
        unsafe_allow_html=True)

df_i = pd.read_csv(
    'https://raw.githubusercontent.com/aaroncolesmith/nfl_mock_draft_db/main/nfl_mock_draft_db.csv'
)

num = 30

d1 = pd.DataFrame()
d2 = pd.DataFrame()
Exemplo n.º 3
0
    # col1, _, col2 = st.beta_columns([20, 1, 20])
    # with col1:
    with container('Public Health', expanders):
        PublicHealth.covid_19_policy(toc=toc)
        PublicHealth.show(toc=toc)
    with container('Economy', expanders):
        Economy.show(toc=toc)

    # with col2:
    with container("Transport & Mobility", expanders):
        Transport.show(toc=toc)
    with container("Energy & Water", expanders):
        CivilInfrastructure.show('water_energy_demand', toc=toc)
    with container("Community Needs", expanders):
        SocialWelfare.show(['citizen_need'], toc=toc)
    with container("Air Quality", expanders):
        AirQuality.show(toc=toc)

    with st.sidebar.expander("DISCLAIMER"):
        with open("assets/disclaimer.txt", "r", encoding="utf-8") as f:
            disclaimer = f.read()

        st.markdown(disclaimer)

    toc.generate()


with streamlit_analytics.track(firestore_key_file="assets/firebase-key.json",
                               firestore_collection_name="counts"):
    main()
Exemplo n.º 4
0
                                         button_text='Download CSV')
            st.markdown(link, unsafe_allow_html=True)

    else:
        manual.show_manual()

    authors.show_developers()


if __name__ == '__main__':
    try:
        import streamlit_analytics

        credential_file = 'tmp_credentials.json'
        if not os.path.exists(credential_file):
            with open(credential_file, 'w') as infile:
                infile.write(st.secrets['firebase_credentials'])
            print('credentials written')

        collection = datetime.date.today().strftime("%Y-%m")
        with streamlit_analytics.track(
                firestore_key_file=credential_file,
                firestore_collection_name=collection,
                # verbose=True
        ):
            main()
    except KeyError:
        main()

    print("Streamlit finished it's work")
Exemplo n.º 5
0
#     username = st.text_input('Username', value='')
#     if username == '': 
#         st.info('Please input your username. ')
#         st.stop()
#     st.markdown(f'You will login as `{username}`. ')
#     pwd = st.text_input('Trial token', type='password')
#     if pwd == 'MOSCO-2020' or pwd == 'mosco2020admin': 
#         st.success('Success. Welcome back :)')
#         visitor_cnt[username] = visitor_cnt.get(username, [])
#         visitor_cnt[username].append(str(datetime.now()))
#         if username in ['yezi-li', 'luxin-tian'] and pwd == 'mosco2020admin': 
#             st.text('Visitor analytics')
#             st.json(visitor_cnt)
#         main()
#     else: 
#         if pwd != '': 
#             st.error('Invalid trial token. Please contact the development team to request for a trial token. ')
#         else: 
#             st.stop()


if __name__ == '__main__': 
    import os
    with streamlit_analytics.track(unsafe_password=os.environ['analytics_pwd']): 
        st.set_page_config(page_title='MOSCO - A/B Test Toolkits', page_icon='./docs/icon.png', layout='centered', initial_sidebar_state='auto')
        try: 
            main()
        except: 
            st.error('Oops! Something went wrong...Please check your input.\nIf you think there is a bug, please open up an [issue](https://github.com/luxin-tian/mosco_ab_test/issues) and help us improve. ')
            raise
Exemplo n.º 6
0
import streamlit as st
import streamlit_analytics
from datetime import datetime

with streamlit_analytics.track(verbose=True):
    st.title("Test app with all widgets")
    st.checkbox("checkbox")
    st.button("button")
    st.radio("radio", ("option 1", "option 2"))
    st.selectbox("selectbox", ("option 1", "option 2", "option 3"))
    st.multiselect("multiselect", ("option 1", "option 2"))
    st.slider("slider")
    st.slider("double-ended slider", value=[0, 100])
    st.select_slider("select_slider", ("option 1", "option 2"))
    st.text_input("text_input")
    st.number_input("number_input")
    st.text_area("text_area")
    st.date_input("date_input")
    st.time_input("time_input")
    st.file_uploader("file_uploader")
    st.color_picker("color_picker")

    st.sidebar.checkbox("sidebar_checkbox")
    st.sidebar.button("sidebar_button")
    st.sidebar.radio("sidebar_radio", ("option 1", "option 2"))
    st.sidebar.selectbox("sidebar_selectbox",
                         ("option 1", "option 2", "option 3"))
    st.sidebar.multiselect("sidebar_multiselect", ("option 1", "option 2"))
    st.sidebar.slider("sidebar_slider")
    st.sidebar.slider("sidebar_double-ended slider", value=[0, 100])
    st.sidebar.select_slider("sidebar_select_slider", ("option 1", "option 2"))