最近では、Pythonが人気のあるプログラミング言語の1つに紹介されているのを目にすることも多いと思います。Webサイト制作したり、Web上の情報収集ツールとして利用したり、ライブラリを利用してデータ処理・分析・解析したりする用途等、Pythonを使って何ができるかを知ることで、興味の幅が広がるかもしれません。
ここでは実際に「Streamlit」というデータサイエンティストのフロントエンドとも呼ばれる、データ分析アプリを簡単に作成できるフレームワークの使い方の基礎を確認します。2次元の表データを作成する際などに用いるデータ解析ライブラリのPandas等を使ったデータの可視化をするということを行います。
具体的には、「都道府県別の(世帯)年収平均をグラフ表示する」作業に挑戦していただきたいと思います。
今回、Visual Studio CodeのRemoteWSL拡張機能を利用していきます。環境構築をされていない場合は、以下の記事を参考に動作確認までお願いできればと思います。
数字を直感的にわかりやすい形で表現することで、データの傾向や特性をイメージすることができると、面白いと感じられるかもしれません。学習するメリットを感じ、学習の一歩を踏み出す方々の後押しができれば嬉しい限りです。
それではまず、VSCodeにてStreamlitの基本的な使い方を確認していきましょう。
Contents
Streamlitの基礎~基本的な使い方
Streamlitとは、HTMLを使わずPythonだけでアプリを作れてしまうというWebUI付きのアプリケーションを簡単に作れるフレームワークです。DataFrameを使ってグラフを描画したり、データ可視化のツールとして使うこともできる為、サクッと、作成した表をグラフにして結果を表示するアプリケーションを作れたりします。
それでは実際にStreamlitの公式デモサイトを確認することで、Streamlitでどのようなことができるのか確認したいと思います。前提として、Streamlitのインストール(環境構築)から話を進めていきたいと思います。
まずVisual Studio Codeでフォルダを新規作成します。
注) リモートウィンドウから [New WSL Window] を選択した状態で作業を進行してください。
ターミナルからcdコマンドで、作成したフォルダに移動してください。
pipというPythonのパッケージ管理ツールを使って、「Streamlit」をインストールします。
※Pythonインストール時に標準で入っているパッケージ以外をインストールする場合、
「pip install パッケージ名」のコマンドで、インストールをします。
インストール済みのパッケージを確認する場合には、次のコマンドを入力します。
ここで、「pandas」がインストールされていない場合には、この後に使用する為、
streamlitをインストールした手順と同様、「pip install pandas」でインストールをお願いします。
Streamlitの公式デモサイトの確認
問題1:デモを確認してみよう
次のように「streamlit hello」と入力すると、デモページを表示することができます。
実際にデモページを表示し、「デモを選択」から、それぞれのデモを確認してみましょう。
Streamlit:テキスト入力の書き方
今度は実際に、streamlitで入力したテキストをWebページで表示する例をみていきたいと思います。
「sample01.py」ファイルを作成し、以下のようにコードを入力します。
Streamlitでテキスト入力をする場合、次のような書式でコードを記載します。
# テキスト入力 st.title('タイトル表示') st.header('ヘッダーの表示') st.subheader('サブヘッダーの表示') st.text('テキストの表示')
コードを入力後、「streamlit run (作成したファイル名)sample01.py」を実行します。
問題2:テキストの表示
次のテキスト入力のコードを記載して、以下のようなWebページが表示されることを確認してください。
# テキストの表示 st.title('Streamlitの基礎') st.header('総世帯の年間収入を都道府県別に調べてみた') st.text('DataFrameの生成および表示を確認する')
Streamlit:DataFrameの生成および表示
次は、streamlitでDataFrameを生成して表示する方法について見ていきます。
以下のDataFrameを使って、Webページに2次元の表をWebページに表示してみましょう。
df = pd.DataFrame({ 'pref_name': ['東京都', '大阪府', '愛知県', '埼玉県','徳島県','宮崎県'], 'wage_2019': [629.7, 503.1, 613.4, 587.1, 501.7, 463.1] })
実際に作成したデータフレームの表が表示されることを確認してください。
Streamlit:DataFrameからグラフ描画
次に、先ほど作成したデータフレームからグラフを作成していきます。
st.line_chart(df) #折れ線グラフ st.area_chart(df) #面グラフ st.bar_chart(df) #棒グラフ
のように、streamlitに用意されたメソッドを使って「折れ線グラフ」、「面グラフ」、「棒グラフ」を表示します。
次のように表示されれば、成功です。
・折れ線グラフ(line_chartメソッドにて描画)
・面グラフ(area_chartメソッドにて描画)
・面グラフ(area_chartメソッドにて描画)
====================================
業務でPythonを使ってツールを作ったり、自動化処理を記述したりする機会がある方もいらっしゃると思います。自身のPCでVisual Studio Codeを使って簡単に今回のサンプルを試すことができますので、この機会にPythonに触れる時間を作っていただけると嬉しい限りです。
以上となります。