Streamlitで遊ぼう
最終更新日:2022-10-21
公式ドキュメントを読む
Streamlitの基本機能は全て、公式のAPIリファレンスに記載されています。 プログラミングの開発ではドキュメント参照しながらコーディングしていく必要があるため、この機会に覚えておきましょう。
Streamlitの機能
ここではStreamlitでよく使う機能について説明します。
st.text_input()
いわゆるテキストボックスです。入力した文字を利用した制御ができます。
text = st.text_input("初期値")
st.write(f"テキストボックスの値 : {text}")
ただしこの状態だと、入力文字が空でも文字が出力されてしまいます。
そのため、if文を利用して出力させないようにするのがいいです。
text = st.text_input("以下にテキストを入力")
if text:
st.write(f"テキストボックスの値 : {text}")
st.button()
いわゆるボタンです。if文と組み合わせることで、「ボタンが押された時に以下の処理を行う」という実装ができます。
text = st.text_input("以下にテキストを入力")
if st.button("表示"):
st.write(f"テキストボックスの値 : {text}")
ボタン入力前
ボタン入力後
st.image()
画像を表示します。 利用するにはPIL等の画像読み込み系ライブラリが必要です。
import streamlit as st
from PIL import Image
st.title("Streamlit入門")
image = Image.open("画像パス")
st.image(image, caption='ここにキャプションを入力', width=500)
st.file_uploader
任意のファイルをアップロードした上で処理することができます。 受け取った値はFileUploaderクラスとなっており、readメソッドにより、byte型の値を取得できます。
image_file = st.file_uploader("ファイルを選択してください。", type=["png", "jpg"])
if image_file is not None:
image_byte_data = image_file.read()
st.image(image_byte_data, width=500) # byte型のデータも画像として表示できる。