Pour créer un visualiseur interactif en Python pour explorer des données, nous pouvons utiliser plusieurs bibliothèques puissantes telles que `pandas` pour la manipulation des données, `matplotlib` pour les visualisations statiques, et `plotly` pour les visualisations interactives. Nous allons également utiliser `streamlit` pour créer une interface utilisateur mobile-first.
Voici un guide étape par étape pour créer un visualiseur interactif en Python :
Étape 1: Installer les bibliothèques nécessaires
Assurez-vous d’avoir les bibliothèques suivantes installées :
« `bash
pip install pandas matplotlib plotly streamlit
« `
Étape 2: Importer les bibliothèques et charger les données
« `python
import pandas as pd
import plotly.express as px
import streamlit as st
# Charger les données
data = pd.read_csv(‘donnees.csv’) # Remplacez ‘donnees.csv’ par le chemin de votre fichier de données
« `
Étape 3: Créer une interface utilisateur avec Streamlit
« `python
# Titre de l’application
st.title(‘Visualiseur de Données Interactif’)
# Description de l’application
st.write(‘Explorez les données du domaine avec des visualisations interactives.’)
# Menu de sélection des colonnes
st.sidebar.header(‘Sélection des Données’)
col1, col2 = st.columns(2)
with col1:
x_column = st.sidebar.selectbox(‘Axe X’, data.columns)
with col2:
y_column = st.sidebar.selectbox(‘Axe Y’, data.columns)
# Créer une visualisation interactive avec Plotly
fig = px.scatter(data, x=x_column, y=y_column, title=’Visualisation des Données’)
st.plotly_chart(fig)
« `
Étape 4: Ajouter des fonctionnalités supplémentaires
Pour rendre l’interface plus interactive, nous pouvons ajouter des fonctionnalités telles que la sélection de types de visualisation et des filtres.
« `python
# Sélection du type de visualisation
visualization_type = st.sidebar.selectbox(‘Type de Visualisation’, [‘Scatter’, ‘Line’, ‘Bar’])
# Filtres pour les données
st.sidebar.header(‘Filtres’)
filter_value = st.sidebar.slider(‘Filtre’, min_value=data[y_column].min(), max_value=data[y_column].max())
filtered_data = data[data[y_column] > filter_value]
# Créer la visualisation en fonction du type sélectionné
if visualization_type == ‘Scatter’:
fig = px.scatter(filtered_data, x=x_column, y=y_column, title=’Scatter Plot’)
elif visualization_type == ‘Line’:
fig = px.line(filtered_data, x=x_column, y=y_column, title=’Line Plot’)
elif visualization_type == ‘Bar’:
fig = px.bar(filtered_data, x=x_column, y=y_column, title=’Bar Plot’)
st.plotly_chart(fig)
« `
Étape 5: Rendre l’interface mobile-first
Pour s’assurer que l’interface est mobile-first, nous pouvons ajuster le style de Streamlit.
« `python
st.set_page_config(layout= »wide », initial_sidebar_state= »expanded »)
# Ajouter du CSS pour le style mobile-first
st.markdown(« » »
« » », unsafe_allow_html=True)
« `
Étape 6: Exécuter l’application
Pour exécuter l’application, enregistrez le code dans un fichier Python, par exemple `app.py`, et exécutez-le avec la commande suivante :
« `bash
streamlit run app.py
« `
Conclusion
Ce guide vous a montré comment créer un visualiseur interactif en Python en utilisant `pandas`, `plotly`, et `streamlit`. L’interface est conçue pour être mobile-first et offre une expérience utilisateur fluide et interactive. Vous pouvez étendre cette application en ajoutant plus de fonctionnalités et de types de visualisation selon vos besoins.