Pythonで手軽にウエブアプリを作成出来ると大人気のStreamlit。
簡単にアプリが作成出来る反面、細かなカスタマイズが難しいと言ったデメリットがあります。
「細かくカスタマイズしたいのなら、他のフレームワークを使えば良い」と言われそうですが、
せめて、文字の色や大きさくらい変更したいですよね。
streamlitで文字修飾をする方法を解説します。
streamlitで文字修飾をする方法
公式ホームページを見ると、引数にunsafe_allow_html=Trueを渡すことによって、文字修飾が出来るようです。
Function signature
st.markdown(body, unsafe_allow_html=False)
ただし、セキュリティ上安全なHTMLを作成するのは難しいため、オススメはしないとのこと。
自己責任でお願いします。
色の変更
write関数で文字列を表示させるコード
streamlit.write(‘文字’)
文字を修飾するには引数 unsafe_allow_html=True を渡します。
write関数、markdown関数、どちらも同じ書き方でOK!
1 2 3 4 5 6 7 |
#通常のwrite関数で表示 streamlit.write('文字') #文字の色を赤に指定 txt1 = '<p style="color:red;">文字(赤)</p>' streamlit.write(txt1, unsafe_allow_html=True) streamlit.markdown(txt1, unsafe_allow_html=True) |
このように赤く表示されます。
サイズの変更
文字のサイズを変更するには、font-sizeを指定します。
1 2 |
txt2 = '<p style="color:red;font-size: 30px;">文字(サイズ30)</p>' st.markdown(txt2, unsafe_allow_html=True) |
4行目の文字サイズが大きくなりました。
文字の一部を修飾する
spanタグを使うと、文字の一部を修飾する事ができます。
1 2 3 |
st.markdown( '<p> spanタグで文字の一部を <span style = "color: fuchsia">修飾</span>します!</p>', unsafe_allow_html=True) |
このような事が出来るようになると、表現力が増しますね。
文字の背景色を指定
文字の背景色を指定することも出来ます。
下の例では、色の指定をsRGBに変更して表示をcenter(中央)にしています。
1 2 3 4 |
text = '文字修飾' st.write( f'<p style="text-align: center; background-color:#0066cc;color:#ffffff;font-size:50px;border-radius:2%;">{text}</p>', unsafe_allow_html=True) |
背景を青、文字を白、配置を中央にしました。
この記事を書いた人
あしおゆたか
株式投資歴23年のシステムトレーダー(←主な取引手法)
机上の理論ではなく、実体験に基づいた記事作りをモットーにしています。
スポーツクラブに毎週2日~3日通い、サウナ後の暴飲暴食が趣味。
◇主な投資対象
日本株式
株式ETF(上場投資信託)
日経225先物
日経225先物オプション
◇運営者情報はこちら