概要
前回から引き続きStreamlitの解説をしてゆきます
今回はいよいよStreamlitのAPIについて解説します
具体的には、st.write、マジックコマンド、テキスト表示系のメソッド、データ表示系のメソッドについて解説します
↓Lesson 4にStreamlitの作り方が乗っています

st.write
最初に解説するのはst.writeです
引数に入力したデータに応じて適切な表示を行ってくれるメソッドなので非常に便利です
例えば




Markdownのフォーマットでの表示、データフレームの表示などが可能です


また、引数に複数のデータを入力することも可能です。データはそれぞれ異なった形式でも問題ありません
その他、チャートも表示可能です
マジックコマンド


次に紹介するのはマジックコマンドです
変数やデータのみを行に記載することでデータを表示することができます
また、マジックコマンドは設定ファイルで無効にすることもできます
設定ファイルの位置はC:\Users\<ユーザー名>\.streamlit\config.tomlです
この設定ファイルに画面のようにmagicEnabled = falseと記載することでマジックコマンドを無効にできます
テキスト表示系のメソッド
続いて、テキスト表示系のメソッドについて解説してゆきます
テキスト表示系のメソッドはst.markdown、st.title、st.header、st.subheader、st.caption、st.code、st.text、st.latex、st.divider
があります。これらを順に解説してゆきます


st.markdown
まずはst.markdownです
これはデータをマークダウン形式で表示できます
st.title
続いてst.titleです
これはデータをタイトル形式で表示できます
st.header
続いてst.headerです
これはデータをヘッダー形式で表示できます
st.subheader
st.subheaderはサブヘッダー形式で表示できます
st.caption
st.captionは小さいフォントで表示できます。図や票にたいする補足説明を付けるのに適しています
st.code
st.codeはソースコードを表示できます。対応しているプログラミング言語はこちらのURLに記載されています
st.text
st.textは単純に文字を表示します
st.latex
st.latexではlatexという数式を扱うフォーマットで文字を表示できます
st.divider
st.dividerは横線を引くことができます。画面を区切りたいときに便利です
データ表示系のメソッド
続いてはデータ表示系のメソッドについて解説します
データ表示系のメソッドはst.dataframe、st.data_editor、st.column_config、st.table、st.metric、st.jsonです
これらを順に解説してゆきます
st.dataframe


まずはst.dataframeです
これはインタラクティブなテーブルを作成します
st.dataframeの引数にデータフレームを入力すればインタラクティブなテーブルを表示できます
インタラクティブなテーブルでは
カラムのソート、カラムのサイズ変更、テーブルのサイズ変更、検索、コピーが可能です


またdf.styleを使用すればテーブルのスタイルを変更することもできます
st.data_editor


続いてはst.data_editorです
これを使えばテーブルのデータを編集することが可能になります
また、行を追加できるに設定することもできます。やり方はst.data_editorにnum_rows=”dynamic”を入力します
st.column_config
続いてst.column_configです
こちらはカラムに対して様々な設定を付与することができます
全部で14種類ありますが今回はそのうちの三つだけ紹介します。他のものも見てみたい人はこちらのURLをご参照ください
st.column_config.Column


まずはst.column_config.Columnです
これを使用すると、カラムに名前を付けることができるほか、
ツールチップの表示や特定のカラムのみ編集不可にすることができます
st.column_config.NumberColumn


続いてst.column_config.NumberColumnです
これを使用すると、入力される値の最小値や最大値を設定できるほか、フォーマットも指定できます
st.column_config.TextColumn


最後はst.column_config.TextColumnです
これを使用すると、入力される文字数を制限したり、正規表現を用いて入力値の妥当性を確認できます
st.table


続いてst.tableです
こちらは静的なテーブルを作成することができます。
先程のテーブルとは違い、カラムのサイズ変更や検索などができなくなっています
st.metric


続いてst.metricです
これは指標を表示するのに適しています
st.json


最後に紹介するのはst.jsonです
これはjsonを表示します
表示されたjsonでは表示を折りたたんだり、コピーをしたりできます