st.set_page_config
は、Streamlit アプリのページ設定を行うための関数です。
アプリのタイトル、レイアウト、アイコン、初期のサイドバーの状態などを設定できます。
通常、アプリの冒頭で一度だけ実行します。
基本的な使い方
以下のコードを Streamlit スクリプトの最初に記述することで、ページ設定を行えます。
import streamlit as st
st.set_page_config(
page_title="My Streamlit App", # タイトル
page_icon="🚀", # ファビコン
layout="wide", # レイアウト("centered" または "wide")
initial_sidebar_state="expanded" # サイドバーの初期状態("auto", "expanded", "collapsed")
)
各オプションの詳細
page_title
- ウィンドウやブラウザのタブに表示されるタイトルを指定します。
- 例:
page_title="データ分析アプリ"
page_icon
- アプリのアイコンを設定します。
- 絵文字(例:
"🚀"
)や画像ファイル(例:"favicon.png"
)が指定できます。
layout
- アプリのレイアウトを指定します。
"centered"
(デフォルト): コンテンツが中央寄せで表示される。"wide"
: 画面全体に広がる。
- 例:
layout="wide"
initial_sidebar_state
- サイドバーの初期状態を指定します。
"auto"
: ユーザーの前回の状態を記憶。"expanded"
: サイドバーを開いた状態で開始。"collapsed"
: サイドバーを閉じた状態で開始。
- 例:
initial_sidebar_state="expanded"
実用例
import streamlit as st
st.set_page_config(
page_title="データ可視化アプリ",
page_icon="📊",
layout="wide",
initial_sidebar_state="expanded"
)
st.title("データ可視化アプリ")
st.write("このアプリでは、データをインタラクティブに可視化できます。")
上記のコードを実行すると以下のような画面が表示されます。

注意点
st.set_page_config
は スクリプトの最初 に実行する必要があります。
途中で実行するとエラーが発生します。- 一度設定すると、変更はできません。
誤って複数回実行してしまい、以下のようなメッセージが出力されたことがありました。
StreamlitSetPageConfigMustBeFirstCommandError: set_page_config() can only be called once per app page, and must be called as the first Streamlit command in your script.
まとめ
set_page_config
を使うことで、Streamlit アプリの 見た目や操作性を向上 させることができます。