La bibliothèque Streamlit Python

1. Description de Streamlit Python

Streamlit est une bibliothèque open-source en Python conçue pour faciliter la création rapide d'applications web interactives pour la visualisation de données et le déploiement de modèles d'apprentissage automatique. Avec Streamlit, vous pouvez créer des interfaces utilisateur simples et élégantes sans avoir à maîtriser les connaissances approfondies en développement web. En résumé, Streamlit est un excellent outil pour les scientifiques des données, les analystes et les développeurs qui souhaitent créer rapidement des applications web interactives pour visualiser des données ou présenter des modèles d'apprentissage automatique. Son approche simple et sa capacité à transformer du code Python en interfaces utilisateur interactives en font un choix populaire dans la communauté de la science des données.

2. Principales caractéristiques de la bibliothèque Streamlit

Voici une description des caractéristiques clés de Streamlit :

  1. Simplicité d'utilisation : Streamlit vise à simplifier le processus de développement d'applications web en utilisant une syntaxe intuitive et déclarative. Les développeurs peuvent créer des applications en utilisant du code Python familier, sans avoir besoin de connaissances approfondies en HTML, CSS ou JavaScript.
  2. Interopérabilité : Streamlit est conçu pour fonctionner avec des bibliothèques de visualisation de données populaires telles que Matplotlib, Plotly et Seaborn. Vous pouvez également intégrer des widgets interactifs pour permettre aux utilisateurs d'interagir avec vos visualisations.
  3. Rafraîchissement automatique : Une caractéristique unique de Streamlit est son rafraîchissement automatique. Chaque fois que vous modifiez votre code, le navigateur affiche instantanément les changements sans nécessiter de rechargement manuel.
  4. Widgets interactifs : Streamlit offre une variété de widgets (boutons, curseurs, champs de saisie, etc.) que vous pouvez utiliser pour créer une interface utilisateur interactive. Ces widgets peuvent être utilisés pour ajuster les paramètres et voir comment ils affectent les visualisations en temps réel.
  5. Déploiement facile : Une fois que vous avez développé votre application Streamlit, le déploiement est relativement simple. Vous pouvez déployer votre application sur diverses plateformes, y compris des services de cloud comme Heroku ou des services spécifiques à Streamlit tels que Streamlit Sharing.
  6. Personnalisation avancée : Bien que Streamlit soit conçu pour être simple à utiliser, il offre tout de même des possibilités de personnalisation avancée si vous avez besoin de personnaliser l'apparence et le comportement de votre application.
  7. Support de l'apprentissage automatique : Streamlit est largement utilisé dans le domaine de l'apprentissage automatique pour créer des tableaux de bord interactifs et des démonstrations de modèles. Vous pouvez visualiser les résultats, ajuster les paramètres des modèles et présenter vos découvertes de manière interactive.




3. Installation et premier usage de Streamlit

L'installation de Streamlit est assez simple. Voici les étapes pour installer Streamlit et créer votre première application basique :

3.1 Installation de Streamlit

Ouvrez votre terminal et exécutez la commande suivante pour installer Streamlit via pip, le gestionnaire de paquets Python :

3.2 Création de votre première application

Créez un nouveau fichier Python (par exemple, app.py) dans un répertoire de votre choix.

Ouvrez app.py dans un éditeur de texte ou un environnement de développement intégré (IDE) de votre choix et commencez à coder votre première application Streamlit.

Voici un exemple de code pour une application qui affiche "Bonjour, Streamlit !" :

3.3 Exécution de l'application

Ouvrez votre terminal, accédez au répertoire où se trouve votre fichier app.py et exécutez la commande suivante :

Cela lancera l'application Streamlit et ouvrira automatiquement une fenêtre de navigateur avec votre application en cours d'exécution. Vous devriez voir le titre et le texte que vous avez définis dans le code.

3.4 Exploration plus avancée

À partir de cette base, vous pouvez explorer davantage les fonctionnalités de Streamlit en ajoutant des widgets interactifs, des graphiques, des tableaux de données, et bien plus encore. La documentation officielle de Streamlit est une ressource précieuse pour en savoir plus : https://docs.streamlit.io/

Voici un exemple simple d'ajout d'un graphique à votre application :




4. Liste des méthodes associées à Streamlit

Voici une liste de certaines des méthodes et fonctions couramment utilisées associées à Streamlit. Ces méthodes vous permettront de créer des interfaces utilisateur interactives et d'afficher des éléments tels que des widgets, des graphiques et du texte dans vos applications Streamlit. Notez que cette liste n'est pas exhaustive, mais elle couvre les bases pour vous aider à démarrer.

4.1 Widgets basiques

  1. st.write() : Affiche du texte, des nombres, des listes, etc.
  2. st.title() : Affiche un titre.
  3. st.header() : Affiche un en-tête.
  4. st.subheader() : Affiche un sous-en-tête.
  5. st.text() : Affiche du texte.
  6. st.markdown() : Affiche du texte au format Markdown.
  7. st.latex() : Affiche une formule LaTeX.

4.2 Widgets interactifs

  1. st.button() : Affiche un bouton interactif.
  2. st.checkbox() : Affiche une case à cocher.
  3. st.radio() : Affiche un bouton radio.
  4. st.selectbox() : Affiche une boîte de sélection déroulante.
  5. st.multiselect() : Affiche une boîte de sélection multiple.
  6. st.slider() : Affiche un curseur.
  7. st.text_input() : Affiche un champ de saisie de texte.
  8. st.number_input() : Affiche un champ de saisie numérique.
  9. st.text_area() : Affiche une zone de texte multiligne.
  10. st.date_input() : Affiche un sélecteur de date.
  11. st.time_input() : Affiche un sélecteur d'heure.

4.3 Affichage de médias

  1. st.image() : Affiche une image.
  2. st.audio() : Affiche un élément audio.
  3. st.video() : Affiche une vidéo YouTube ou locale.

4.4 Widgets avancés

  1. st.expander() : Affiche un expander pour masquer le contenu.
  2. st.spinner() : Affiche un spinner (icône de chargement).
  3. st.beta_columns() : Crée des colonnes pour l'alignement des éléments.

4.5 Visualisations de données

  1. st.line_chart() : Affiche un graphique linéaire.
  2. st.bar_chart() : Affiche un graphique à barres.
  3. st.area_chart() : Affiche un graphique de surface.
  4. st.pyplot() : Affiche un graphique Matplotlib.
  5. st.map() : Affiche une carte.
  6. st.table() : Affiche un tableau.

4.6 Interaction avec les données

  1. st.dataframe() : Affiche un DataFrame Pandas.
  2. st.json() : Affiche un objet JSON.

4.7 Gestion de la mise en page

  1. st.beta_container() : Crée un conteneur pour la mise en page.
  2. st.set_page_config() : Configure la page.

4.8 Interaction avec l'application

  1. st.cache() : Met en cache les résultats de fonctions pour améliorer les performances.
  2. st.exception() : Affiche une exception.

Ces méthodes et fonctions vous permettent de créer des applications Streamlit interactives et personnalisées. Pour plus de détails, consultez la documentation officielle de Streamlit https://docs.streamlit.io/

 

Younes Derfoufi
CRMEF OUJDA

Leave a Reply