ゆとり世代の自由研究

勉強が一生終わりません

Streamlit備忘録

起動方法

streamlit run your_script.py [-- script args]

 

終了方法

ターミナルでCtrl+C

 

ライブラリ設定

import streamlit as st
import pandas as pd

 

書き込み

st.write()

 

データフレームの書き込み

st.dataframe()

 

テーブルの生成

st.table(dataframe)

 

折れ線グラフの表示

st.line_chart(chart_data)

 

地図を描く

st.map(map_data)

 

スライダーを表示

x = st.slider('x')

 

テキスト入力

st.text_input("Your name", key="name") 
st.session_state.name

キーを持つすべてのウィジェットは、セッション状態に自動的に追加されます。

 

チェックボックス

st.checkbox('Text)

 

セレクトボックス

st.selectbox()

 

レイアウト(サイドバー)

セレクトボックスを追加する例

add_selectbox = st.sidebar.selectbox(
    'How would you like to be contacted?',
    ('Email', 'Home phone', 'Mobile phone')
)

 

レイアウト(並べて表示)

st.columnsウィジェットを並べて配置

left_column, right_column = st.columns(2)
# You can use a column just like st.sidebar:
left_column.button('Press me!')

#call Streamlit functions inside a "with" block:
with right_column:
    chosen = st.radio(
        'Sorting hat',
        ("Gryffindor", "Ravenclaw", "Hufflepuff", "Slytherin"))
    st.write(f"You are in {chosen} house!")

 

進行状況を表示(プログレスバー

import streamlit as st
import time

'Starting a long computation...'

# Add a placeholder
latest_iteration = st.empty()
bar = st.progress(0)

for i in range(100):
  # Update the progress bar with each iteration.
  latest_iteration.text(f'Iteration {i+1}')
  bar.progress(i + 1)
  time.sleep(0.1)

'...and now we\'re done!'