Streamlitを使用した画像カルーセルの作成方法


  1. ライブラリのインストール: まず、StreamlitとPillow(画像処理ライブラリ)をインストールします。
pip install streamlit
pip install Pillow
  1. サンプルコード: 以下は、Streamlitで画像カルーセルを作成するための基本的なサンプルコードです。
import streamlit as st
from PIL import Image
def main():
    # 画像のパスを指定
    image_paths = [
        "path_to_image1.jpg",
        "path_to_image2.jpg",
        "path_to_image3.jpg"
    ]
    # 画像を表示するカルーセルの作成
    carousel = st.empty()
    current_image = 0
    while True:
        # 画像を表示
        image = Image.open(image_paths[current_image])
        carousel.image(image, use_column_width=True)
        # 前後の画像に切り替えるボタン
        if current_image > 0:
            if carousel.button("前の画像"):
                current_image -= 1
        if current_image < len(image_paths) - 1:
            if carousel.button("次の画像"):
                current_image += 1
        # リセットボタン
        if carousel.button("リセット"):
            current_image = 0
if __name__ == "__main__":
    main()

このコードでは、指定した画像のパスをリストに格納し、carouselオブジェクトを作成します。carouselオブジェクトは、Streamlitのempty()関数を使用して作成され、後で画像を表示するために使用されます。ループ内では、image_pathsリストから現在の画像を読み込み、carousel.image()関数を使用して画像を表示します。また、前後の画像に切り替えるためのボタンと、リセットボタンも提供されています。

これは基本的な例ですが、さまざまなカスタマイズオプションがあります。たとえば、画像の自動再生、スライドの速度調整、画像のキャプションの表示などが可能です。

以上が、Streamlitを使用して画像カルーセルを作成する基本的な方法です。さまざまな独自の要件に合わせてカスタマイズすることもできます。詳細な情報や他の便利な機能については、Streamlitの公式ドキュメントを参照してください。