💬

Streamlitで簡単なWebアプリを作ってみる

2024/06/03に公開

やること

Streamlitを最近知りました。
Streamlitで簡単でWebアプリを作ってみようと思います。

参考記事

https://qiita.com/tamura__246/items/366b5581c03dd74f4508

環境

  • windows
  • python 3.9.6

Streamlitとは?

StreamlitはPythonのコードを書くだけで、データサイエンスのダッシュボードやアプリケーションを手軽に作れるツールです。

https://streamlit.io/

簡単なWebアプリを作ってみる

  1. 以下のコマンドを実行する
mkdir streamlit
cd streamlit
python -m venv myenv
myenv\Scripts\activate
pip install streamlit
code .
  1. 以下のコードを書いたファイル(app.py)を作成
import streamlit as st

st.title("My First Streamlit App")
st.write("Hello, world!")


3. 以下のコマンドを実行

streamlit run app.py
  1. 以下にアクセスすると、Streamlitアプリが立ち上がることを確認
http://localhost:8501

追加で機能を追加してみる

  • テキスト入力
import streamlit as st

# アプリのタイトル
st.title("Streamlit App")

# テキスト入力
name = st.text_input("Enter your name:")
if name:
    st.write(f"Hello, {name}!")

  • ファイルupload
import streamlit as st

# アプリのタイトル
st.title("Enhanced Streamlit App")

# ファイルアップロード
uploaded_file = st.file_uploader("Choose a file")
if uploaded_file is not None:
    # ファイル名の表示
    st.write("Filename:", uploaded_file.name)

    # ファイルの内容を表示(テキストファイルの場合)
    file_content = uploaded_file.read().decode("utf-8")
    st.write(file_content)

  • グラフの表示
import streamlit as st
import pandas as pd
import numpy as np

# アプリのタイトル
st.title("Streamlit App")

# グラフの表示
data = pd.DataFrame({
    'x': np.random.randn(100),
    'y': np.random.randn(100)
})

st.line_chart(data)

まとめ

pythonでサクッと簡単にWebアプリを作成できました。
簡単にできるけど、カスタマイズ性はそこまでなのかなーと感じました。
今度、ChatGPTアプリぽいアプリを作ってみようかなーと。

ヘッドウォータース

Discussion