はじめに
Streamlitを使うと、PythonコードだけでWebアプリを作ることができます。
今回はよく使うコンポーネントをご紹介します。
- st.title(), st.write()
- st.text_input()
- st.checkbox()
- st.selectbox()
- st.radio()
- st.number_input()
- st.button()
- st.image()
サンプル
こちらがサンプルです
st.title(), st.write()
import streamlit as st
# -- タイトル、見出し、テキスト表示 --
st.title('タイトル')
st.header('見出し1')
st.subheader('見出し2')
st.write('これは文字列')
st.write(12345)
st.text_input()
テキスト入力を受け付けるためのコンポーネントです。フォームや検索バーに利用できます。
text = st.text_input('名前を入力してください:')
st.write(f'こんにちは、{text}さん!')
st.checkbox()
チェックボックスを使って、オン/オフの選択が可能です。
if st.checkbox('表示しますか?'):
st.write('なにもないよ')
st.selectbox()
ドロップダウンメニューで選択肢を提供することができます。
option = st.selectbox(
'何にする?',
('ごはん', 'お風呂', '私')
)
if option == "私":
st.write(f'あなたは {option} を選びました!お楽しみください。')
else:
st.error("私にしなさい")
st.radio()
複数の選択肢から1つだけ選べるラジオボタンです。
gakka = st.radio("学科を選択してください",('物理','化学','数学'))
if gakka != '化学':
st.warning("センスないわ")
else:
st.write("素晴らしい")
st.number_input()
数値入力用のフィールドで、整数や浮動小数点数の入力を受け付けるコンポーネントです。
weight = st.number_input('体重を入力してください')
if weight < 50:
st.write("痩せすぎです。もっと食べましょう")
else:
st.write("太り過ぎです。")
st.button()
ボタンを作成し、クリックした際にアクションを実行できます。
btn = st.button('自爆', type="primary")
if btn:
st.write('自爆スイッチが押されました')
st.image()
画像を表示するためのコンポーネントです。URLから画像を表示できます。
st.image('https://www.aoyama.ac.jp/wp-content/uploads/2018/02/visual_identity_img_02-1.png', caption='イーゴ君')
最後に
この記事では、Streamlitでよく使うコンポーネントを紹介しました。これらのコンポーネントを使えば、すぐにでもインタラクティブなWebアプリを作成することが可能です。ぜひ試してみてください!