Streamlitのtable
は、データフレームやリストデータを簡単に表示できる機能で、データの可視化やアプリケーションの開発に便利です。
基本的な使い方や応用方法をまとめます。
基本の使い方
Streamlitのtable
は、Streamlitライブラリ内の関数streamlit.table
で呼び出します。
pandas.DataFrame
、リスト、辞書などの形式でデータを渡すことで、簡単に表形式で表示できます。
import streamlit as st
import pandas as pd
# データフレームの作成
data = {
'商品名': ['りんご', 'バナナ', 'オレンジ'],
'価格': [100, 80, 120],
'在庫数': [50, 30, 70]
}
df = pd.DataFrame(data)
# tableでデータを表示
st.table(df)
上記のコードを実行すると、df
のデータが表形式で表示されます。
tableとdataframeの違い
Streamlitにはtable
のほかに、dataframe
という関数もあります。
両者には次のような違いがあります。
- table
データを静的に表示するため、ユーザーによるソートやスクロールができません。 - dataframe
インタラクティブな表示ができ、ソートやスクロールが可能です。
動的な操作が必要ない場合は、table
がシンプルで便利です。
リストや辞書を表示する
st.table
は、pandas.DataFrame
以外にリストや辞書も表示できます。
import streamlit as st
# リストデータを表示
data_list = [
['りんご', 100, 50],
['バナナ', 80, 30],
['オレンジ', 120, 70]
]
# 列名を指定して表示
st.table(data_list)
列名の設定
データフレームを使用しない場合、列名を直接指定する方法はありません。
データをpandas.DataFrame
に変換してからtable
に渡すと、列名も含めて表示できます。
import streamlit as st
import pandas as pd
data_list = [
['りんご', 100, 50],
['バナナ', 80, 30],
['オレンジ', 120, 70]
]
# データフレームに変換して列名を設定
df = pd.DataFrame(data_list, columns=['商品名', '価格', '在庫数'])
st.table(df)
デザインの調整
table
はシンプルな表示に特化しているため、デザインや色付けのカスタマイズはできません。
より複雑なデザインを必要とする場合は、markdown
を使用してHTMLテーブルを作成したり、write
を使用して表示する方法もあります。
まとめ
table
は、簡単に表形式のデータを静的に表示できる。- 動的な操作が不要な場合には、
table
が適している。 - 列名を追加したい場合は、
pandas.DataFrame
でデータを渡すと便利です。
以上が、Streamlitでのtable
の使い方の基本です。