| Champ | Type | Description |
|---|---|---|
| niveau | STRING | Niveau administratif (département, région) |
| cle_unique | STRING | Identifiant unique par enregistrement |
| sexe | STRING | Homme/Femme/Ensemble |
| year | DATE | Format AAAA-MM-JJ |
| annee | INTEGER | Année en format numérique |
| region | STRING | Code ou nom de la région |
| code_region | INTEGER | Code numérique de la région |
| nom_region | STRING | Nom complet de la région |
| Champ | Type | Description |
|---|---|---|
| pathologie | STRING | Code descriptif de la pathologie |
| code_pathologie | INTEGER | Code numérique de la pathologie |
| nom_pathologie | STRING | Nom complet de la pathologie |
| Champ | Type | Description |
|---|---|---|
| nbr_hospi | INTEGER | Nombre total d'hospitalisations |
| hospi_prog_24h | FLOAT | Hospitalisations programmées (24h) |
| hospi_autres_24h | FLOAT | Autres hospitalisations (24h) |
| hospi_total_24h | FLOAT | Total hospitalisations en 24h |
| hospi_[1-9]J | FLOAT | Hospitalisations par durée (1-9 jours) |
| hospi_10J_19J | FLOAT | Hospitalisations de 10 à 19 jours |
| hospi_20J_29J | FLOAT | Hospitalisations de 20 à 29 jours |
| hospi_30J | FLOAT | Hospitalisations de 30 jours et plus |
| hospi_total_jj | FLOAT | Total toutes durées confondues |
| AVG_duree_hospi | FLOAT | Durée moyenne des hospitalisations |
| Champ | Type | Description |
|---|---|---|
| evolution_nbr_hospi | FLOAT | Variation absolue du nombre d'hospitalisations comparé à l'année précédente |
| evolution_percent_nbr_hospi | FLOAT | Variation en pourcentage comparé à l'année précédente |
| evolution_hospi_total_24h | FLOAT | Évolution des hospitalisations 24h comparé à l'année précédente |
| evolution_hospi_total_jj | FLOAT | Évolution du total des journées comparé à l'année précédente |
| evolution_AVG_duree_hospi | FLOAT | Évolution de la durée moyenne comparé à l'année précédente |
| evolution_percent_* | FLOAT | Variations en pourcentage des différents indicateurs comparé à l'année précédente |
| Champ | Type | Description |
|---|---|---|
| tranche_age_0_1 | FLOAT | Proportion 0-1 an |
| tranche_age_1_4 | FLOAT | Proportion 1-4 ans |
| tranche_age_5_14 | FLOAT | Proportion 5-14 ans |
| tranche_age_15_24 | FLOAT | Proportion 15-24 ans |
| tranche_age_25_34 | FLOAT | Proportion 25-34 ans |
| tranche_age_35_44 | FLOAT | Proportion 35-44 ans |
| tranche_age_45_54 | FLOAT | Proportion 45-54 ans |
| tranche_age_55_64 | FLOAT | Proportion 55-64 ans |
| tranche_age_65_74 | FLOAT | Proportion 65-74 ans |
| tranche_age_75_84 | FLOAT | Proportion 75-84 ans |
| tranche_age_85_et_plus | FLOAT | Proportion 85 ans et plus |
| Champ | Type | Description |
|---|---|---|
| tx_brut_tt_age_pour_mille | FLOAT | Taux brut pour 1 000 habitants |
| tx_standard_tt_age_pour_mille | FLOAT | Taux standardisé pour 1 000 habitants |
| indice_comparatif_tt_age_percent | FLOAT | Indice standardisé en pourcentage |
| Champ | Type | Description |
|---|---|---|
| classification | STRING | Service médical (M, C, SSR, O, ESND, PSY)* |
| population | INTEGER | Population totale par département |
* Classification des services :
- M : Médecine
- C : Chirurgie
- SSR : Soins de Suite et de Réadaptation
- O : Obstétrique
- ESND : Établissement de Soin Longue Durée
- PSY : Psychothérapie
Table des Capacités : projet-jbn-data-le-wagon.dbt_medical_analysis_join_total_morbidite_capacite.class_join_total_morbidite_capacite_kpi
| Champ | Type | Description |
|---|---|---|
| lit_hospi_complete | FLOAT | Nombre de lits en hospitalisation complète |
| place_hospi_partielle | FLOAT | Nombre de places en hospitalisation partielle |
| passage_urgence | FLOAT | Nombre de passages aux urgences |
| Champ | Type | Description |
|---|---|---|
| sejour_hospi_complete | FLOAT | Nombre de séjours en hospitalisation complète |
| sejour_hospi_partielle | FLOAT | Nombre de séjours en hospitalisation partielle |
| journee_hospi_complete | FLOAT | Nombre de journées d'hospitalisation complète |
| Champ | Type | Description |
|---|---|---|
| taux_occupation | FLOAT | Taux d'occupation global |
| taux_occupation1 | FLOAT | Taux d'occupation alternatif |
| Champ | Type | Description |
|---|---|---|
| evolution_lit_hospi_complete | FLOAT | Variation du nombre de lits (vs année précédente) |
| evolution_percent_lit_hospi_complete | FLOAT | Variation en % du nombre de lits |
| evolution_place_hospi_partielle | FLOAT | Variation des places en hospitalisation partielle |
| evolution_percent_place_hospi_partielle | FLOAT | Variation en % des places partielles |
| Champ | Type | Description |
|---|---|---|
| evolution_sejour_hospi_complete | FLOAT | Variation des séjours complets |
| evolution_sejour_hospi_partielle | FLOAT | Variation des séjours partiels |
| evolution_journee_hospi_complete | FLOAT | Variation des journées d'hospitalisation |
| evolution_passage_urgence | FLOAT | Variation des passages aux urgences |
| evolution_percent_passage_urgence | FLOAT | Variation en % des passages aux urgences |
| Champ | Type | Description |
|---|---|---|
| evolution_taux_occupation1 | FLOAT | Variation du taux d'occupation |
| evolution_percent_taux_occupation1 | FLOAT | Variation en % du taux d'occupation |
| Champ | Type | Description |
|---|---|---|
| population | FLOAT | Population de référence |
| tx_brut_tt_age_pour_mille | FLOAT | Taux brut pour 1000 habitants |
| tx_standard_tt_age_pour_mille | FLOAT | Taux standardisé pour 1000 habitants |
| indice_comparatif_tt_age_percent | FLOAT | Indice comparatif tous âges (%) |
Cette table fournit une vue complète des capacités hospitalières et de leur utilisation, incluant :
- Les capacités d'accueil en hospitalisation complète et partielle
- L'activité détaillée (séjours, journées, passages aux urgences)
- Les taux d'occupation et leurs évolutions
- Les variations annuelles de tous les indicateurs
- Les données démographiques et indicateurs standardisés
Les données sont disponibles par :
- Service médical (classification)
- Niveau administratif (région/département)
- Année
- Type d'hospitalisation (complète/partielle)
# Dataset principal
query_main = """
SELECT * FROM `projet-jbn-data-le-wagon.dbt_medical_analysis_join_total_morbidite.class_join_total_morbidite_sexe_population`
"""
# Données de capacité
query_capacite = """
SELECT * FROM `projet-jbn-data-le-wagon.dbt_medical_analysis_join_total_morbidite_capacite.class_join_total_morbidite_capacite_kpi`
"""-
df_nbr_hospi : Données d'hospitalisation
df_nbr_hospi = df_complet[[ 'niveau', 'year', 'region', 'nom_region', 'pathologie', 'nom_pathologie', 'sexe', 'nbr_hospi', 'evolution_nbr_hospi', 'evolution_percent_nbr_hospi', 'evolution_hospi_total_24h', 'evolution_hospi_total_jj', 'indice_comparatif_tt_age_percent', 'tranche_age_0_1', ..., 'tranche_age_85_et_plus', 'classification' ]]
-
df_duree_hospi : Durées de séjour
df_duree_hospi = df_complet[[ 'niveau', 'year', 'region', 'nom_pathologie', 'sexe', 'AVG_duree_hospi', 'evolution_AVG_duree_hospi', 'evolution_percent_AVG_duree_hospi', 'evolution_hospi_total_jj', 'classification' ]]
-
df_tranche_age_hospi : Analyses par âge
df_tranche_age_hospi = df_complet[[ 'niveau', 'year', 'region', 'nom_pathologie', 'tranche_age_0_1', ..., 'tranche_age_85_et_plus', 'tx_brut_tt_age_pour_mille', 'tx_standard_tt_age_pour_mille', 'indice_comparatif_tt_age_percent', 'classification' ]]
@st.cache_resource
def fetch_data():
# Chargement avec gestion d'erreurs et cache
# Conversion des dates
df_complet['year'] = pd.to_datetime(df_complet['year'])@st.cache_data
def calculate_main_metrics(df_nbr_hospi, df_capacite_hospi, selected_sex='Ensemble'):
metrics = {}
# Calcul des hospitalisations par année
# Calcul des lits disponibles par année
return metrics- Métriques clés 2018-2022
- Graphiques d'évolution
- Analyses comparatives
- Cartes interactives
- Répartition régionale
- Comparaisons territoriales
- Sélecteur de pathologies
- Graphiques combinés
- Visualisations 3D temporelles
- Distribution par âge
- Évolution des taux
- Heatmaps démographiques
- Comparaison des services
- Analyses temporelles
- Indicateurs de performance
# Graphique combiné hospitalisations/durée
fig = make_subplots(specs=[[{"secondary_y": True}]])
fig.add_trace(
go.Bar(x=hospi_by_pathology['nom_pathologie'], y=hospi_by_pathology['nbr_hospi']),
secondary_y=False
)# Animation temporelle
fig = px.scatter(
combined_data,
x='nbr_hospi',
y='AVG_duree_hospi',
animation_frame='year',
size='nbr_hospi',
color='AVG_duree_hospi'
)fig_heatmap = px.density_heatmap(
df_age_service_melted,
x='tranche_age',
y='classification',
z='value',
title='Distribution des hospitalisations par âge et service'
)- Utilisation de
@st.cache_resourcepour les données - Utilisation de
@st.cache_datapour les calculs
def load_with_progress():
# Interface visuelle de chargement
# Barre de progression
# Gestion des erreurs- Création de vues spécifiques
- Filtrage optimal des données
- Nettoyage des données non utilisées
Les tables class_join_total_morbidite_sexe_population et class_join_total_morbidite_capacite_kpi sont liées par les champs suivants :
niveau(Départements/Régions)year(Année)classification(Type de service médical)region/code_region(Identifiant territorial)
| Table Population | Table Capacité | Utilisation Combinée |
|---|---|---|
| Nombre d'hospitalisations | Nombre de lits | Taux d'occupation |
| Durée moyenne de séjour | Journées d'hospitalisation | Efficacité des services |
| Données démographiques | Capacité d'accueil | Adéquation ressources/besoins |
# Exemple de jointure pour l'analyse globale
df_analyse = pd.merge(
df_population,
df_capacite,
on=['niveau', 'year', 'classification', 'region'],
how='left'
)
# Calcul des indicateurs combinés
df_analyse['taux_occupation'] = (df_analyse['hospi_total_jj'] /
(df_analyse['lit_hospi_complete'] * 365)) * 100# Analyse territoriale des capacités et besoins
analyse_territoriale = df_analyse.groupby(['region', 'classification']).agg({
'nbr_hospi': 'sum',
'lit_hospi_complete': 'sum',
'taux_occupation': 'mean',
'population': 'first'
}).reset_index()# Analyse spécifique par service médical
def analyse_service(classification, annee):
return df_analyse[
(df_analyse['classification'] == classification) &
(df_analyse['year'] == annee)
].agg({
'nbr_hospi': 'sum',
'lit_hospi_complete': 'sum',
'AVG_duree_hospi': 'mean',
'taux_occupation': 'mean'
})| Indicateur | Calcul | Description |
|---|---|---|
| Taux d'occupation | hospi_total_jj / (lit_hospi_complete * 365) |
Utilisation des capacités |
| Rotation des lits | nbr_hospi / lit_hospi_complete |
Efficacité d'utilisation |
| Durée moyenne effective | journee_hospi_complete / sejour_hospi_complete |
Durée réelle des séjours |
# Préparation des données pour la carte
map_data = df_analyse.groupby('region').agg({
'nbr_hospi': 'sum',
'lit_hospi_complete': 'sum',
'taux_occupation': 'mean'
}).reset_index()# Évolution temporelle des capacités et besoins
evolution_data = df_analyse.groupby('year').agg({
'nbr_hospi': 'sum',
'lit_hospi_complete': 'sum',
'taux_occupation': 'mean'
}).reset_index()-
Gestion des Données Manquantes
# Remplacement des valeurs manquantes df_analyse['taux_occupation'] = df_analyse['taux_occupation'].fillna( df_analyse.groupby('classification')['taux_occupation'].transform('mean') )
-
Cohérence Temporelle
# Vérification de la cohérence des données def verifier_coherence(df): return df.groupby('year').agg({ 'nbr_hospi': 'sum', 'sejour_hospi_complete': 'sum' }).eval('difference = nbr_hospi - sejour_hospi_complete')
-
Agrégations Territoriales
# Agrégation région -> département def agreger_territoire(df, niveau_cible): colonnes_somme = ['nbr_hospi', 'lit_hospi_complete', 'journee_hospi_complete'] colonnes_moyenne = ['AVG_duree_hospi', 'taux_occupation'] return df.groupby(['year', niveau_cible]).agg({ **{col: 'sum' for col in colonnes_somme}, **{col: 'mean' for col in colonnes_moyenne} })
- Tableaux de bord interactifs avec filtres par année et région
- Graphiques de tendances temporelles
- Cartes de France pour visualisation géographique
- Sélection du sexe : "Ensemble", "Homme", "Femme"
- Sélection de l'année : Toutes les années ou année spécifique
- Filtrage des données :
df_filtered = df.copy() if selected_sex != "Ensemble": df_filtered = df_filtered[df_filtered['sexe'] == selected_sex] if selected_year != "Toutes les années": df_filtered = df_filtered[df_filtered['annee'] == int(selected_year)]
- Total d'hospitalisations : Somme de
nbr_hospi - Durée moyenne : Moyenne de
AVG_duree_hospi - Indice comparatif : Moyenne de
indice_comparatif_tt_age_percent - Hospitalisations < 24h : Pourcentage calculé à partir de
hospi_total_24h - Tranche d'âge majoritaire : Analyse des colonnes
tranche_age_*
- Type : Graphique combiné (Barres + Ligne)
- Données :
hospi_by_pathology = df_filtered.groupby('nom_pathologie').agg({ 'nbr_hospi': 'sum', 'AVG_duree_hospi': 'mean' })
- Visualisation :
- Barres : Nombre d'hospitalisations par pathologie
- Ligne : Durée moyenne de séjour
- Filtrage : Top N pathologies (configurable via slider)
- Type : Scatter plot avec animation temporelle
- Données :
combined_data = pd.merge( df_nbr_hospi.groupby(['nom_pathologie', 'annee'])['nbr_hospi'].sum(), df_duree_hospi.groupby(['nom_pathologie', 'annee'])['AVG_duree_hospi'].mean(), on=['nom_pathologie', 'annee'] )
- Caractéristiques :
- Taille des bulles : Nombre d'hospitalisations
- Couleur : Durée moyenne de séjour
- Animation : Par année
- Texte : Nom de la pathologie
- Visualisations géographiques des capacités
- Analyse des ressources par région
- Évolution temporelle des capacités
- Distribution par âge
- Analyses des taux standardisés
- Comparaisons démographiques régionales
- Thème de couleurs :
MAIN_COLOR = '#003366' # Bleu marine principal SECONDARY_COLOR = '#AFDC8F' # Vert clair complémentaire ACCENT_COLOR = '#3D7317' # Vert foncé pour les accents
- Mise en page : Utilisation de colonnes Streamlit pour une disposition responsive
query = """
SELECT *
FROM `projet-jbn-data-le-wagon.dbt_medical_analysis_join_total_morbidite.class_join_total_morbidite_sexe_population`
WHERE classification = 'O' AND niveau = 'Régions'
"""- Identiques à la chirurgie avec des clés spécifiques :
selected_sex = st.selectbox("Sexe", ["Ensemble", "Homme", "Femme"], key="selecteur_sexe") selected_year = st.selectbox("Année", years_options, key="year_filter")
- Total d'hospitalisations :
total_hospi = path_data['nbr_hospi'].sum() st.metric("Total d'hospitalisations", f"{total_hospi/1_000:,.2f}K")
- Durée moyenne de séjour :
avg_duration = df_filtered['AVG_duree_hospi'].mean() st.metric("Durée moyenne", f"{avg_duration:.1f} jours")
- Indice comparatif : Moyenne de
indice_comparatif_tt_age_percent - Hospitalisations < 24h : Pourcentage calculé à partir de
hospi_total_24h - Analyse par âge : Utilisation des colonnes
tranche_age_*
-
Graphique Combiné Hospitalisations/Durée
- Type : Subplot avec axe Y secondaire
- Données : Agrégation par pathologie
- Composants :
- Barres : Nombre d'hospitalisations
- Ligne : Durée moyenne de séjour
- Interactivité : Hover templates personnalisés
-
Scatter Plot Dynamique
- Animation temporelle par année
- Taille des bulles proportionnelle au nombre d'hospitalisations
- Échelle de couleur Viridis pour la durée de séjour
- Focus sur les pathologies liées à la grossesse et l'accouchement
- Analyse des durées de séjour typiques en obstétrique
- Suivi des tendances par tranche d'âge
- Classification 'O' spécifique à l'obstétrique
- Métriques adaptées aux séjours obstétriques
- Focus sur les pathologies médicales chroniques
- Analyse des durées de séjour plus longues
- Graphiques Temporels :
combined_data_3d = pd.merge( df_nbr_hospi.groupby(['nom_pathologie', 'annee'])['nbr_hospi'].sum(), df_duree_hospi.groupby(['nom_pathologie', 'annee'])['AVG_duree_hospi'].mean(), on=['nom_pathologie', 'annee'] )
- Personnalisation des Graphiques :
- Utilisation de templates Plotly White
- Interactivité avancée
- Animations fluides pour les tendances temporelles
query = """
SELECT *
FROM `projet-jbn-data-le-wagon.dbt_medical_analysis_join_total_morbidite.class_join_total_morbidite_sexe_population`
WHERE classification = 'M' AND niveau = 'Régions'
"""- Gestion des Données COVID :
mask_covid = (df['nom_pathologie'] == 'Infection à coronavirus (COVID-19)') & (df['annee'].isin([2018, 2019])) df.loc[mask_covid, ['nbr_hospi', 'AVG_duree_hospi', 'indice_comparatif_tt_age_percent']] = 0
-
Analyse par pathologies (📈)
- Sélecteur de pathologies avec option "Toutes les pathologies"
- Métriques clés affichées en colonnes
- Visualisations combinées
-
Analyse par capacité (🗺️)
- Visualisations géographiques
- Analyse des capacités hospitalières
-
Analyse démographique (🏥)
- Distribution par âge
- Analyses comparatives
- Indicateurs de Performance :
total_hospi = path_data['nbr_hospi'].sum() avg_duration = df_filtered['AVG_duree_hospi'].mean() indice_comparatif = path_data['indice_comparatif_tt_age_percent'].mean()
- Visualisations Spécifiques Médecine
- Graphique Principal :
- Barres : Nombre d'hospitalisations par pathologie
- Ligne : Durée moyenne de séjour
- Scatter Plot Dynamique :
- Animation temporelle
- Taille des bulles : Nombre d'hospitalisations
- Couleur : Durée de séjour
- Graphique Principal :
- Répartition géographique des capacités médicales
- Analyse des ressources par région
- Évolution temporelle des capacités
- Distribution par âge des patients médicaux
- Tendances démographiques spécifiques
- Comparaisons régionales
- Classification : Utilisation du code 'M'
- Durées de Séjour : Généralement plus longues que les autres services
- Population : Souvent âgée ou en réadaptation
- Graphiques Temporels :
combined_data_3d = pd.merge( df_nbr_hospi.groupby(['nom_pathologie', 'annee'])['nbr_hospi'].sum(), df_duree_hospi.groupby(['nom_pathologie', 'annee'])['AVG_duree_hospi'].mean(), on=['nom_pathologie', 'annee'] )
- Personnalisation des Graphiques :
- Utilisation de templates Plotly White
- Interactivité avancée
- Animations fluides pour les tendances temporelles
query = """
SELECT *
FROM `projet-jbn-data-le-wagon.dbt_medical_analysis_join_total_morbidite.class_join_total_morbidite_sexe_population`
WHERE classification = 'PSY' AND niveau = 'Régions'
"""- Gestion des Données COVID :
mask_covid = (df['nom_pathologie'] == 'Infection à coronavirus (COVID-19)') & (df['annee'].isin([2018, 2019])) df.loc[mask_covid, ['nbr_hospi', 'AVG_duree_hospi', 'indice_comparatif_tt_age_percent']] = 0
- Filtres Principaux :
selected_sex = st.selectbox("Sexe", ["Ensemble", "Homme", "Femme"], key="selecteur_sexe_psy") selected_year = st.selectbox("Année", years_options, key="year_filter_psy")
-
Sélection des Pathologies
- Liste déroulante complète des pathologies psychiatriques
- Option "Toutes les pathologies" incluse
-
Métriques Clés
total_hospi = path_data['nbr_hospi'].sum() avg_duration = df_filtered['AVG_duree_hospi'].mean() indice_comparatif = path_data['indice_comparatif_tt_age_percent'].mean()
-
Visualisations Spécifiques Psychiatrie
- Graphique Principal :
- Barres : Nombre d'hospitalisations par pathologie
- Ligne : Durée moyenne de séjour
- Scatter Plot Dynamique :
- Animation temporelle
- Taille des bulles : Nombre d'hospitalisations
- Couleur : Durée de séjour
- Graphique Principal :
- Visualisations géographiques des capacités psychiatriques
- Analyse des ressources par région
- Évolution temporelle des capacités
- Distribution par âge des patients psychiatriques
- Tendances démographiques spécifiques
- Comparaisons régionales
- Classification : Code 'PSY' spécifique
- Durées de Séjour : Typiquement plus longues
- Population : Souvent âgée ou en réadaptation
- Graphiques Temporels :
combined_data_3d = pd.merge( df_nbr_hospi.groupby(['nom_pathologie', 'annee'])['nbr_hospi'].sum(), df_duree_hospi.groupby(['nom_pathologie', 'annee'])['AVG_duree_hospi'].mean(), on=['nom_pathologie', 'annee'] )
- Personnalisation :
- Templates adaptés aux longues durées
- Échelles ajustées aux séjours prolongés
- Visualisations des progressions
- Focus sur la réadaptation et la récupération
- Suivi des durées de séjour prolongées
- Analyse des parcours de soins
- Évaluation des résultats de réadaptation
query = """
SELECT *
FROM `projet-jbn-data-le-wagon.dbt_medical_analysis_join_total_morbidite.class_join_total_morbidite_sexe_population`
WHERE classification = 'SSR' AND niveau = 'Régions'
"""- Sélecteurs Principaux :
selected_sex = st.selectbox("Sexe", ["Ensemble", "Homme", "Femme"], key="selecteur_sexe_ssr") selected_year = st.selectbox("Année", years_options, key="year_filter_ssr")
-
Sélection des Pathologies
- Liste déroulante complète des pathologies SSR
- Option "Toutes les pathologies" incluse
-
Métriques Clés
total_hospi = path_data['nbr_hospi'].sum() avg_duration = df_filtered['AVG_duree_hospi'].mean() indice_comparatif = path_data['indice_comparatif_tt_age_percent'].mean()
-
Visualisations Spécifiques SSR
- Graphique Principal :
- Barres : Nombre d'hospitalisations par pathologie
- Ligne : Durée moyenne de séjour
- Scatter Plot Dynamique :
- Animation temporelle
- Taille des bulles : Nombre d'hospitalisations
- Couleur : Durée de séjour
- Graphique Principal :
- Répartition géographique des capacités SSR
- Analyse des ressources par région
- Évolution temporelle des capacités
- Distribution par âge des patients SSR
- Tendances démographiques spécifiques
- Comparaisons régionales
- Classification : Utilisation du code 'SSR'
- Durées de Séjour : Typiquement plus longues
- Population : Souvent âgée ou en réadaptation
# Préparation des données pour visualisation
df_filtered = df.copy()
if selected_sex != "Ensemble":
df_filtered = df_filtered[df_filtered['sexe'] == selected_sex]
if selected_year != "Toutes les années":
df_filtered = df_filtered[df_filtered['annee'] == int(selected_year)]- Graphiques Temporels :
combined_data_3d = pd.merge( df_nbr_hospi.groupby(['nom_pathologie', 'annee'])['nbr_hospi'].sum(), df_duree_hospi.groupby(['nom_pathologie', 'annee'])['AVG_duree_hospi'].mean(), on=['nom_pathologie', 'annee'] )
- Personnalisation :
- Templates adaptés aux longues durées
- Échelles ajustées aux séjours prolongés
- Visualisations des progressions
- Focus sur la réadaptation et la récupération
- Suivi des durées de séjour prolongées
- Analyse des parcours de soins
- Évaluation des résultats de réadaptation
- Plotly Express : Graphiques interactifs
- Plotly Graph Objects : Visualisations personnalisées
- Streamlit : Interface utilisateur et widgets
-
Graphiques en Barres
- Comparaisons entre régions
- Analyses par pathologie
-
Courbes d'Évolution
- Tendances temporelles
- Évolutions des métriques clés
-
Cartes Choroplèthes
- Visualisations géographiques
- Comparaisons régionales
-
Graphiques en Boîte
- Distribution des durées de séjour
- Analyses statistiques
- Interface interactive pour création de visualisations
- Sélection flexible des métriques
- Filtres dynamiques (année, région, pathologie)
- Export des visualisations