Dans le monde actuel en évolution rapide de la science des données, il est crucial de visualiser efficacement les données. Que vous soyez un analyste de données expérimenté ou que vous commenciez tout juste votre parcours, la maîtrise de diverses techniques de visualisation peut grandement améliorer votre capacité à communiquer des informations et à prendre des décisions. Ce guide complet explore Streamlit, une bibliothèque Python populaire pour créer des applications Web interactives, et présente 12 types de graphiques puissants que vous pouvez facilement créer pour visualiser vos données. Des simples graphiques à barres aux visualisations géospatiales avancées, ce didacticiel couvre tout.
Introduction à Streamlit et à ses capacités de visualisation
Streamlit a révolutionné la façon dont les scientifiques et les développeurs de données créent des applications Web interactives pour la visualisation de données. Grâce à son API intuitive et à son intégration transparente avec les bibliothèques Python populaires, Streamlit vous permet de transformer vos scripts de données en applications Web partageables en quelques minutes. Dans ce guide, nous nous concentrerons sur la polyvalence de Streamlit dans la création de différents types de graphiques, chacun adapté à différents besoins de visualisation de données.
1. Graphique en aires
Introduction aux graphiques en aires
Les graphiques en zones sont excellents pour afficher les totaux cumulés au fil du temps ou entre catégories. Ils mettent l'accent sur l'ampleur du changement et la relation entre les différents ensembles de données, ce qui les rend parfaits pour suivre les tendances et comparer plusieurs séries de données.
Création du graphique en aires
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Cas d'utilisation
-
Croissance des ventes : Visualisez comment les ventes augmentent au cours de différents trimestres.
-
Trafic du site Web : Suivez le nombre de visiteurs au fil du temps.
-
Mesures cumulées : Affichez les mesures cumulées telles que les revenus ou les dépenses totaux.
Conseils de personnalisation
-
Ajuster les couleurs : Modifiez le paramètre de couleur en fonction de votre marque ou de vos préférences.
-
Ajouter des titres et des étiquettes : Améliorez la clarté en ajoutant des titres et des étiquettes d'axe.
-
Modifier les axes : Ajustez l'échelle ou la plage des axes pour une meilleure représentation des données.
2. Graphique à barres
Introduction aux graphiques à barres
Les graphiques à barres sont un moyen fondamental de comparer différentes catégories ou groupes. Ils sont très efficaces pour afficher des points de données discrets, ce qui facilite la comparaison des quantités dans différentes catégories.
Création du graphique à barres
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Cas d'utilisation
-
Ventes par région : Comparez les chiffres de ventes dans différentes régions.
-
Popularité des produits :Affichez la popularité de divers produits.
-
Résultats de l'enquête : Visualisez les réponses aux questions de l'enquête.
Options de personnalisation
-
Couleurs des barres : Bien que l'exemple utilise des paramètres par défaut, vous pouvez personnaliser les couleurs des barres à l'aide de paramètres supplémentaires ou en prétraitant les données.
-
Orientation : Changez l'orientation des barres (horizontale ou verticale) pour une meilleure lisibilité.
-
Étiquettes et légendes : Ajoutez des étiquettes et des légendes pour fournir plus de contexte aux données.
3. Graphique linéaire
Introduction aux graphiques linéaires
Les graphiques linéaires sont excellents pour montrer les tendances sur des données continues, telles que des séries chronologiques. Ils aident à suivre les changements, à identifier les modèles et à comparer plusieurs séries de données sur le même intervalle.
Création du graphique linéaire
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 2. Bar Chart")
# Generate random data for the bar chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Display a bar chart using the same data
st.bar_chart(chart_data)
Cas d'utilisation
-
Cours des actions : Suivez les mouvements du cours des actions au fil du temps.
-
Changements de température : Surveillez les fluctuations de température au cours des différents jours.
-
Visites du site Web : Analysez les tendances du trafic du site Web au fil des semaines ou des mois.
Conseils de personnalisation
-
Lignes multiples : Tracez plusieurs lignes en spécifiant des colonnes supplémentaires dans le paramètre y.
-
Styles de ligne : Ajustez les styles de ligne (pleins, pointillés) pour différencier les séries de données.
-
Interactivité : Améliorez l'interactivité en ajoutant des info-bulles ou des effets de survol pour afficher les valeurs exactes.
4. Carte
Introduction aux cartes dans Streamlit
La visualisation des données géographiques est cruciale pour l'analyse spatiale, vous permettant de visualiser des points de données sur une carte pour identifier des modèles, des points chauds et des distributions sur différents emplacements.
Création de la carte
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Cas d'utilisation
-
Emplacements des magasins :Affichez les emplacements de plusieurs magasins ou bureaux.
-
Points chauds d'événements : Visualisez les zones avec de fortes concentrations d'événements ou d'activités.
-
Répartitions démographiques :Affichez la répartition des différents groupes démographiques dans les régions.
Conseils de personnalisation
-
Centre de la carte et zoom : Ajustez le centre de la carte et le niveau de zoom pour vous concentrer sur des zones spécifiques.
-
Esthétique des marqueurs : Personnalisez les formes, les tailles et les couleurs des marqueurs pour représenter différentes dimensions de données.
-
Interactivité : Ajoutez des info-bulles ou des fenêtres contextuelles pour fournir plus d'informations sur chaque point de données.
5. Graphique à nuages de points
Introduction aux graphiques à nuages de points
Les diagrammes à nuages de points sont des outils puissants pour identifier les relations ou les corrélations entre deux variables. Ils aident à découvrir des modèles, des tendances et des causes potentielles au sein de vos données.
Création du graphique à nuages de points
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 2. Bar Chart")
# Generate random data for the bar chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Display a bar chart using the same data
st.bar_chart(chart_data)
Cas d'utilisation
-
Publicité et ventes : Explorez la relation entre les dépenses publicitaires et les chiffres de ventes.
-
Taille par rapport au poids : Analysez la corrélation entre la taille et le poids des individus.
-
Mesures de performance : Comparez différentes mesures de performance de produits ou de services.
Conseils de personnalisation
-
Lignes de tendance : Ajoutez des lignes de tendance pour mettre en évidence les corrélations ou les tendances au sein des données.
-
Tailles et couleurs des points : Différenciez les points de données en ajustant leurs tailles et leurs couleurs en fonction de variables supplémentaires.
-
Interactivité : Améliorez l'interactivité en activant des info-bulles qui affichent des informations détaillées lorsque vous survolez des points.
6. Carte d'Altaïr
Introduction à Altaïr
Altair est une bibliothèque de visualisation statistique déclarative pour Python, offrant des capacités graphiques avancées avec une syntaxe simple et intuitive. Il excelle dans la création de visualisations interactives et complexes avec un minimum de code.
Création de la carte Altair
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Cas d'utilisation
-
Analyse exploratoire des données : Étudiez les relations entre plusieurs variables.
-
Tableaux de bord interactifs : Créez des visualisations dynamiques qui répondent aux entrées des utilisateurs.
-
Visualisations statistiques détaillées : Présentez des données complexes dans un format compréhensible.
Conseils de personnalisation
-
Faceting : Créez de petits multiples pour comparer différents sous-ensembles de données.
-
Types de marques : Expérimentez avec différents types de marques comme des lignes, des barres ou des zones pour des effets visuels variés.
-
Éléments interactifs : Incorporez des sélections, des filtres et un zoom pour améliorer l'interactivité de l'utilisateur.
8. Graphique Graphviz
Introduction à Graphviz
Graphviz est un outil permettant de créer des graphiques et des diagrammes de réseau, ce qui le rend inestimable pour visualiser les relations, les flux de travail et les structures organisationnelles. Il vous permet de représenter des connexions complexes de manière claire et organisée.
Création du graphique Graphviz
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 2. Bar Chart")
# Generate random data for the bar chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Display a bar chart using the same data
st.bar_chart(chart_data)
Cas d'utilisation
-
Pipelines de développement logiciel : Visualisez les étapes du développement logiciel, de la planification au déploiement.
-
Structures organisationnelles : Représentent la hiérarchie et les relations au sein d'une organisation.
-
Arbres de décision : Illustrent le flux des décisions et les résultats possibles.
Conseils de personnalisation
-
Formes et couleurs des nœuds : Personnalisez les formes et les couleurs des nœuds pour représenter différents types d'entités ou de statuts.
-
Styles de bord : Modifiez les styles de bord (tirets, gras) pour indiquer différents types de relations ou de dépendances.
-
Dispositions de graphiques : Explorez différentes dispositions de graphiques (par exemple, hiérarchique, circulaire) pour une meilleure clarté.
9. Graphique de tracé
Introduction à Plotly
Plotly est une bibliothèque puissante pour créer des graphiques interactifs et de qualité publication. Il offre un large éventail de types de graphiques et d'options de personnalisation, ce qui le rend adapté aux visualisations de données complexes et aux tableaux de bord interactifs.
Création de tracés de distribution
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Création de nuages de points avec Plotly Express
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 2. Bar Chart")
# Generate random data for the bar chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Display a bar chart using the same data
st.bar_chart(chart_data)
Cas d'utilisation
-
Analyse de distribution : Comparez les distributions de différents ensembles de données côte à côte.
-
Tableaux de bord interactifs : Créez des visualisations dynamiques et interactives qui répondent aux entrées des utilisateurs.
-
Analyse comparative : Utilisez plusieurs thèmes et styles pour mettre en évidence différents aspects des données.
Conseils de personnalisation
-
Ajustements du thème : Explorez différents thèmes pour correspondre à la conception de votre application.
-
Configurations de mise en page : Ajustez les paramètres de mise en page tels que les marges, les légendes et les titres des axes pour une meilleure présentation.
-
Types de graphiques avancés : Expérimentez avec des tracés 3D, des cartes thermiques et d'autres types de graphiques avancés pour des visualisations plus complexes.
10. Graphique pydeck
Introduction à Pydeck
pydeck est une interface Python pour deck.gl, permettant des visualisations avancées et hautes performances basées sur WebGL. Il est particulièrement utile pour créer des visualisations géospatiales complexes et interactives.
Création du graphique pydeck
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 3. Line Chart")
# Generate random data for the line chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create a line chart with the random data
st.line_chart(
chart_data,
x="col1",
y="col2",
color="col3",
)
st.write("#### 3.1 Basic Line Chart")
Cas d'utilisation
-
Analyse géospatiale : Visualisez de grands ensembles de données géospatiales pour identifier des modèles et des points chauds.
-
Urbanisme : Analysez la densité de population, le flux de circulation ou la répartition des infrastructures.
-
Études environnementales : Cartographiez les données environnementales telles que les niveaux de pollution ou les observations d'animaux sauvages.
Conseils de personnalisation
-
Différents types de calques : Expérimentez avec différents types de calques comme ScatterplotLayer, ArcLayer ou PathLayer pour divers effets visuels.
-
Styles de carte : Modifiez le paramètre map_style pour utiliser différents thèmes de carte (par exemple, satellite, mode sombre).
-
Interactivité : Améliorez l'interactivité en activant les info-bulles, les filtres et les mises à jour dynamiques des données.
11. Graphique pyplot
Introduction au pyplot de Matplotlib
Matplotlib est une bibliothèque de traçage fondamentale en Python, et pyplot fournit une interface de type MATLAB pour créer des visualisations statiques, animées et interactives. Il est hautement personnalisable et largement utilisé à des fins d'analyse de données statistiques et à des fins éducatives.
Création de l'histogramme
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Cas d'utilisation
-
Analyse statistique : Visualisez la distribution des ensembles de données pour identifier les modèles et les anomalies.
-
Objectifs pédagogiques : Enseigner des concepts tels que les distributions de probabilité et la normalisation des données.
-
Exploration des données : Évaluez la forme et la diffusion des données avant d'effectuer une analyse plus approfondie.
Options de personnalisation
-
Titres et étiquettes : Ajoutez des titres, des étiquettes d'axe et des légendes pour fournir du contexte.
-
Couleurs et styles : Personnalisez les couleurs des barres, les styles de bords et l'esthétique globale du tracé.
-
Plusieurs histogrammes : Superposez plusieurs histogrammes pour comparer différents ensembles de données ou groupes.
-
Fonctionnalités avancées : Incorporez des tracés de densité, des distributions cumulatives ou des annotations pour des informations plus approfondies.
12. Graphique Véga
Introduction à Vega-Lite
Vega-Lite est une grammaire de haut niveau pour créer des visualisations interactives, intégrée à Streamlit pour plus de flexibilité. Il vous permet de créer des graphiques sophistiqués et réactifs avec des spécifications concises, ce qui facilite la création de visualisations complexes sans codage approfondi.
Création du graphique Vega
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 2. Bar Chart")
# Generate random data for the bar chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Display a bar chart using the same data
st.bar_chart(chart_data)
Cas d'utilisation
-
Visualisations interactives sophistiquées : Créez des graphiques complexes qui répondent aux interactions de l'utilisateur comme le survol, le clic ou la sélection.
-
Exploration des données : Permettez aux utilisateurs d'explorer des ensembles de données de manière dynamique, en découvrant des informations grâce à des éléments interactifs.
-
Intégration de graphiques complexes : Intégrez des graphiques détaillés et interactifs dans les applications Streamlit pour des présentations de données complètes.
Conseils de personnalisation
-
Ajout de calques : Incorporez des calques supplémentaires comme des lignes, des barres ou des zones pour enrichir la visualisation.
-
Échelles et axes personnalisés : Ajustez les échelles, les titres des axes et les étiquettes pour améliorer la lisibilité et la présentation.
-
Sélections interactives : Mettez en œuvre des sélections et des filtres interactifs pour permettre aux utilisateurs de se concentrer sur des sous-ensembles de données spécifiques.
-
Style et thèmes : Améliorez l'esthétique en personnalisant les couleurs, les polices et les paramètres généraux du thème.
Récapitulatif des types de graphiques
Dans ce didacticiel, nous avons couvert un large éventail de types de graphiques disponibles dans Streamlit, chacun adapté à différents besoins de visualisation de données :
-
Graphique de zone : Idéal pour afficher les totaux cumulés et les tendances.
-
Graphique à barres : Parfait pour comparer des catégories ou des groupes discrets.
-
Graphique linéaire : Excellent pour suivre les changements sur des données continues telles que des séries chronologiques.
-
Carte : Indispensable pour la visualisation des données géographiques et l'analyse spatiale.
-
Diagramme à nuages de points : Utile pour identifier les relations et les corrélations entre les variables.
-
Altair Chart : Visualisations avancées et interactives avec syntaxe déclarative.
-
Graphviz Chart : Visualisation des relations et des flux de travail à l'aide de diagrammes graphiques.
-
Graphique de tracé : Graphiques interactifs et de qualité publication avec une personnalisation étendue.
-
pydeck Chart : Visualisations géospatiales hautes performances utilisant WebGL.
-
pyplot Chart : Tracé de base avec les capacités polyvalentes de Matplotlib.
-
Vega Chart : Visualisations interactives sophistiquées avec la grammaire Vega-Lite.
? Obtenez le code : GitHub - jamesbmour/blog_tutorials
? Tutoriels Streamlit associés : JustCodeIt
? Soutenez mon travail : Achetez-moi un café
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!