datacipen commited on
Commit
141b259
1 Parent(s): 19430fe

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +1 -312
main.py CHANGED
@@ -180,318 +180,7 @@ async def chat_profile():
180
  @cl.on_chat_start
181
  async def on_chat_start():
182
  await cl.Message(f"> SURVEYIA").send()
183
- elements = []
184
- df = pd.read_csv('./public/survey.csv')
185
- df_taille = df.groupby('taille_entreprise').size().reset_index(name='obs')
186
- fig_taille = px.pie(df_taille, names='taille_entreprise', values='obs', color='obs', title="La taille des entreprises ayant répondu", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe).update_traces(textposition='inside', textinfo='percent+label').update_layout(font=dict(size=10,color="RebeccaPurple"))
187
- elements.append(cl.Plotly(name="chart_taille", figure=fig_taille, display="inline", size="large"))
188
-
189
- #await cl.sleep(2)
190
- df_temps = df.groupby('temps_active_domaine_agencement').size().reset_index(name='obs')
191
- fig_temps = px.pie(df_temps, names='temps_active_domaine_agencement', values='obs', color='obs', title="L’engagement dans le domaine de l’agencement", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe).update_traces(textposition='inside', textinfo='percent+label').update_layout(font=dict(size=10,color="RebeccaPurple"))
192
- elements.append(cl.Plotly(name="chart_temps", figure=fig_temps, display="inline", size="large"))
193
-
194
- #await cl.sleep(2)
195
- df_temps_entreprise = df.groupby(['temps_active_domaine_agencement', 'taille_entreprise']).size().reset_index(name='obs')
196
- fig_temps_entreprise = px.bar(df_temps_entreprise, x='temps_active_domaine_agencement', y='obs', color='taille_entreprise', title="L’engagement dans le domaine de l’agencement par taille d'entreprise", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
197
- elements.append(cl.Plotly(name="chart_temps_entreprise", figure=fig_temps_entreprise, display="inline", size="large"))
198
- #await cl.sleep(2)
199
- df_nb_charge = df.groupby('nombre_chargés_affaires').size().reset_index(name='obs')
200
- fig_nb_charge = px.pie(df_nb_charge, names='nombre_chargés_affaires', values='obs', color='obs', title="Le nombre de chargé.e d’affaires en agencement", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe).update_traces(textposition='inside', textinfo='percent+label').update_layout(font=dict(size=10,color="RebeccaPurple"))
201
- elements.append(cl.Plotly(name="chart_nb_charge", figure=fig_nb_charge, display="inline", size="large"))
202
- #await cl.sleep(2)
203
- df_nb_charge_entreprise = df.groupby(['nombre_chargés_affaires', 'taille_entreprise']).size().reset_index(name='obs')
204
- fig_nb_charge_entreprise = px.bar(df_nb_charge_entreprise, x='nombre_chargés_affaires', y='obs', color='taille_entreprise', title="Le nombre de chargé.e d’affaires en agencement par taille d'entreprise", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
205
- elements.append(cl.Plotly(name="chart_nb_charge_entreprise", figure=fig_nb_charge_entreprise, display="inline", size="large"))
206
- #await cl.sleep(2)
207
- df_nb_charge_engagement = df.groupby(['nombre_chargés_affaires', 'temps_active_domaine_agencement']).size().reset_index(name='obs')
208
- fig_nb_charge_engagement = px.bar(df_nb_charge_engagement, x='nombre_chargés_affaires', y='obs', color='temps_active_domaine_agencement', title="Le nombre de chargé.e d’affaires en agencement par année d'engagement", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
209
- elements.append(cl.Plotly(name="chart_nb_charge_entreprise", figure=fig_nb_charge_engagement, display="inline", size="large"))
210
- #await cl.sleep(2)
211
- df_statut = df.groupby('fonction_Statut_repondant').size().reset_index(name='obs')
212
- fig_statut = px.bar(df_statut, x='obs', y='fonction_Statut_repondant', orientation='h', color='obs', title="Le profil des répondants", labels={'obs':'nombre'}, color_continuous_scale="Teal", text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple")).update_traces(showlegend=False)
213
- elements.append(cl.Plotly(name="chart_statut", figure=fig_statut, display="inline", size="large"))
214
- #await cl.sleep(2)
215
- df1 = df
216
- df1['principaux_interlocuteurs'] = df1['principaux_interlocuteurs'].str.split(';')
217
- df1 = df1.explode('principaux_interlocuteurs')
218
- df_interlocuteur = df1.groupby('principaux_interlocuteurs').size().reset_index(name='obs')
219
- fig_interlocuteur = px.bar(df_interlocuteur, x='obs', y='principaux_interlocuteurs', orientation='h', color='obs', title="Les principaux interlocuteurs du CAA", labels={'obs':'nombre'}, color_continuous_scale="Teal", text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple")).update_traces(showlegend=False)
220
- elements.append(cl.Plotly(name="chart_interlocuteur", figure=fig_interlocuteur, display="inline", size="large"))
221
-
222
- #await cl.sleep(2)
223
- df_interlocuteur_entreprise = df1.groupby(['principaux_interlocuteurs', 'taille_entreprise']).size().reset_index(name='obs')
224
- fig_interlocuteur_entreprise = px.bar(df_interlocuteur_entreprise, x='obs', y='principaux_interlocuteurs', orientation='h', color='taille_entreprise', title="Les principaux interlocuteurs du CAA par taille d'entreprise", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
225
- elements.append(cl.Plotly(name="chart_interlocuteur_entreprise", figure=fig_interlocuteur_entreprise, display="inline", size="large"))
226
- #await cl.sleep(2)
227
- df_interlocuteur_nb_charge = df1.groupby(['principaux_interlocuteurs', 'nombre_chargés_affaires']).size().reset_index(name='obs')
228
- fig_interlocuteur_nb_charge = px.bar(df_interlocuteur_nb_charge, x='obs', y='principaux_interlocuteurs', orientation='h', color='nombre_chargés_affaires', title="Les principaux interlocuteurs du CAA par nombre chargé.e d'affaires", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
229
- elements.append(cl.Plotly(name="chart_interlocuteur_nb_charge", figure=fig_interlocuteur_nb_charge, display="inline", size="large"))
230
- #await cl.sleep(2)
231
- df2 = df
232
- df2['principales_compétences_attendues'] = df2['principales_compétences_attendues'].str.split(';')
233
- df2 = df2.explode('principales_compétences_attendues')
234
- df_competences = df2.groupby('principales_compétences_attendues').size().reset_index(name='obs')
235
- fig_competences = px.bar(df_competences, x='obs', y='principales_compétences_attendues', orientation='h', color='obs', title="Les principales compétences attendues", labels={'obs':'nombre'}, color_continuous_scale="Teal", text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple")).update_traces(showlegend=False)
236
- elements.append(cl.Plotly(name="chart_competences", figure=fig_competences, display="inline", size="large"))
237
- #await cl.sleep(2)
238
- df_competences_entreprise = df2.groupby(['principales_compétences_attendues', 'taille_entreprise']).size().reset_index(name='obs')
239
- fig_competences_entreprise = px.bar(df_competences_entreprise, x='obs', y='principales_compétences_attendues', orientation='h', color='taille_entreprise', title="Les principales compétences attendues par taille d'entreprise", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
240
- elements.append(cl.Plotly(name="chart_competences_entreprise", figure=fig_competences_entreprise, display="inline", size="large"))
241
- #await cl.sleep(2)
242
- df_competences_nb_charge = df2.groupby(['principales_compétences_attendues', 'nombre_chargés_affaires']).size().reset_index(name='obs')
243
- fig_competences_nb_charge = px.bar(df_competences_nb_charge, x='obs', y='principales_compétences_attendues', orientation='h', color='nombre_chargés_affaires', title="Les principales compétences attendues par nombre chargé.e d'affaires", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
244
- elements.append(cl.Plotly(name="chart_competences_nb_charge", figure=fig_competences_nb_charge, display="inline", size="large"))
245
- #await cl.sleep(2)
246
- df3 = df
247
- df3['principales_compétences_relationnelles_attendues'] = df3['principales_compétences_relationnelles_attendues'].str.split(';')
248
- df3 = df3.explode('principales_compétences_relationnelles_attendues')
249
- df_competences_relationnelles = df3.groupby('principales_compétences_relationnelles_attendues').size().reset_index(name='obs')
250
- fig_competences_relationnelles = px.bar(df_competences_relationnelles, x='obs', y='principales_compétences_relationnelles_attendues', orientation='h', color='obs', title="Les compétences relationnelles attendues", labels={'obs':'nombre'}, color_continuous_scale="Teal", text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple")).update_traces(showlegend=False)
251
- elements.append(cl.Plotly(name="chart_competences_relationnelles", figure=fig_competences_relationnelles, display="inline", size="large"))
252
- #await cl.sleep(2)
253
- df_competences_relationnelles_entreprise = df3.groupby(['principales_compétences_relationnelles_attendues', 'taille_entreprise']).size().reset_index(name='obs')
254
- fig_competences_relationnelles_entreprise = px.bar(df_competences_relationnelles_entreprise, x='obs', y='principales_compétences_relationnelles_attendues', orientation='h', color='taille_entreprise', title="Les compétences relationnelles attendues par taille d'entreprise", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
255
- elements.append(cl.Plotly(name="chart_competences_relationnelles_entreprise", figure=fig_competences_relationnelles_entreprise, display="inline", size="large"))
256
- #await cl.sleep(2)
257
- df_competences_relationnelles_nb_charge = df3.groupby(['principales_compétences_relationnelles_attendues', 'nombre_chargés_affaires']).size().reset_index(name='obs')
258
- fig_competences_relationnelles_nb_charge = px.bar(df_competences_relationnelles_nb_charge, x='obs', y='principales_compétences_relationnelles_attendues', orientation='h', color='nombre_chargés_affaires', title="Les compétences relationnelles attendues par nombre chargé.e d'affaires", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
259
- elements.append(cl.Plotly(name="chart_competences_relationnelles_nb_charge", figure=fig_competences_relationnelles_nb_charge, display="inline", size="large"))
260
- #await cl.sleep(2)
261
- df4 = df
262
- df4['principales_compétences_gestion_attendues'] = df4['principales_compétences_gestion_attendues'].str.split(';')
263
- df4 = df4.explode('principales_compétences_gestion_attendues')
264
- df_competences_gestion = df4.groupby('principales_compétences_gestion_attendues').size().reset_index(name='obs')
265
- fig_competences_gestion = px.bar(df_competences_gestion, x='obs', y='principales_compétences_gestion_attendues', orientation='h', color='obs', title="Les compétences en gestion attendues", labels={'obs':'nombre'}, color_continuous_scale="Teal", text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple")).update_traces(showlegend=False)
266
- elements.append(cl.Plotly(name="chart_competences_gestion", figure=fig_competences_gestion, display="inline", size="large"))
267
- #await cl.sleep(2)
268
- df_competences_gestion_entreprise = df4.groupby(['principales_compétences_gestion_attendues', 'taille_entreprise']).size().reset_index(name='obs')
269
- fig_competences_gestion_entreprise = px.bar(df_competences_gestion_entreprise, x='obs', y='principales_compétences_gestion_attendues', orientation='h', color='taille_entreprise', title="Les compétences en gestion attendues par taille d'entreprise", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
270
- elements.append(cl.Plotly(name="chart_competences_gestion_entreprise", figure=fig_competences_gestion_entreprise, display="inline", size="large"))
271
- #await cl.sleep(2)
272
- df_competences_gestion_nb_charge = df4.groupby(['principales_compétences_gestion_attendues', 'nombre_chargés_affaires']).size().reset_index(name='obs')
273
- fig_competences_gestion_nb_charge = px.bar(df_competences_gestion_nb_charge, x='obs', y='principales_compétences_gestion_attendues', orientation='h', color='nombre_chargés_affaires', title="Les compétences en gestion attendues par nombre chargé.e d'affaires", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
274
- elements.append(cl.Plotly(name="chart_competences_gestion_nb_charge", figure=fig_competences_gestion_nb_charge, display="inline", size="large"))
275
-
276
- df_difficulte = df.groupby('difficultés_recrutement_chargé').size().reset_index(name='obs')
277
- fig_difficulte = px.pie(df_difficulte, names='difficultés_recrutement_chargé', values='obs', color='obs', title="Difficulté de recruter un CAA", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe).update_traces(textposition='inside', textinfo='percent+label').update_layout(font=dict(size=10,color="RebeccaPurple"))
278
- elements.append(cl.Plotly(name="chart_difficulte", figure=fig_difficulte, display="inline", size="large"))
279
-
280
- df_formation = df.groupby('organisation_formation').size().reset_index(name='obs')
281
- fig_formation = px.pie(df_formation, names='organisation_formation', values='obs', color='obs', title="Formations organisées pour les CAA", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe).update_traces(textposition='inside', textinfo='percent+label').update_layout(font=dict(size=10,color="RebeccaPurple"))
282
- elements.append(cl.Plotly(name="chart_formation", figure=fig_formation, display="inline", size="large"))
283
-
284
- df_formation_entreprise = df.groupby(['organisation_formation', 'taille_entreprise']).size().reset_index(name='obs')
285
- fig_formation_entreprise = px.bar(df_formation_entreprise, x='organisation_formation', y='obs', color='taille_entreprise', title="Formations organisées pour les CAA par taille d'entreprise", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
286
- elements.append(cl.Plotly(name="chart_formation_entreprise", figure=fig_formation_entreprise, display="inline", size="large"))
287
-
288
- df_formation_nb_charge = df.groupby(['organisation_formation', 'nombre_chargés_affaires']).size().reset_index(name='obs')
289
- fig_formation_nb_charge = px.bar(df_formation_nb_charge, x='organisation_formation', y='obs', color='nombre_chargés_affaires', title="Formations organisées pour les CAA par nombre chargé.e d'affaires", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
290
- elements.append(cl.Plotly(name="chart_formation_nb_charge", figure=fig_formation_nb_charge, display="inline", size="large"))
291
-
292
-
293
- df_activites_autonomie_chiffrage = df.groupby('jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Etude_chiffrage').size().reset_index(name='obs')
294
- df_activites_autonomie_conception = df.groupby('jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Conception_technique').size().reset_index(name='obs')
295
- df_activites_autonomie_gestion = df.groupby('jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Assurer_gestion_administrative_financière').size().reset_index(name='obs')
296
- df_activites_autonomie_MOE = df.groupby('jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Contrôler_mise_en_oeuvre').size().reset_index(name='obs')
297
- df_activites_autonomie_cloturer_affaire = df.groupby('jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Développer_relation_client_suivre_clôturer_affaire').size().reset_index(name='obs')
298
- fig_activites_autonomie = make_subplots(rows=5, cols=1, shared_xaxes=True)
299
- fig_activites_autonomie.add_trace(
300
- go.Bar(x=df_activites_autonomie_chiffrage.obs, y=df_activites_autonomie_chiffrage.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Etude_chiffrage, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Etude et Chiffrage"), 1, 1
301
- )
302
- fig_activites_autonomie.add_trace(
303
- go.Bar(x=df_activites_autonomie_conception.obs, y=df_activites_autonomie_conception.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Conception_technique, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Conception technique"),
304
- 2,
305
- 1,
306
- )
307
- fig_activites_autonomie.add_trace(
308
- go.Bar(x=df_activites_autonomie_gestion.obs, y=df_activites_autonomie_gestion.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Assurer_gestion_administrative_financière, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Gestion adm. et fin."),
309
- 3,
310
- 1,
311
- )
312
- fig_activites_autonomie.add_trace(
313
- go.Bar(x=df_activites_autonomie_MOE.obs, y=df_activites_autonomie_MOE.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Contrôler_mise_en_oeuvre, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Contrôler MOE"),
314
- 4,
315
- 1,
316
- )
317
- fig_activites_autonomie.add_trace(
318
- go.Bar(x=df_activites_autonomie_cloturer_affaire.obs, y=df_activites_autonomie_cloturer_affaire.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Développer_relation_client_suivre_clôturer_affaire, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Clôturer affaire"),
319
- 5,
320
- 1,
321
- )
322
- fig_activites_autonomie.update_layout(title='Activités d\'un CAA junior', xaxis_tickfont_size=10, yaxis_tickfont_size=10, autosize=False, width=600, height=600)
323
- elements.append(cl.Plotly(name="chart_activites_autonomie", figure=fig_activites_autonomie, display="inline", size="large"))
324
-
325
- df_activites_autonomie_chiffrage_entreprise = df.groupby(['jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Etude_chiffrage', 'taille_entreprise']).size().reset_index(name='obs')
326
- df_activites_autonomie_conception_entreprise = df.groupby(['jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Conception_technique', 'taille_entreprise']).size().reset_index(name='obs')
327
- df_activites_autonomie_gestion_entreprise = df.groupby(['jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Assurer_gestion_administrative_financière', 'taille_entreprise']).size().reset_index(name='obs')
328
- df_activites_autonomie_MOE_entreprise = df.groupby(['jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Contrôler_mise_en_oeuvre', 'taille_entreprise']).size().reset_index(name='obs')
329
- df_activites_autonomie_cloturer_affaire_entreprise = df.groupby(['jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Développer_relation_client_suivre_clôturer_affaire', 'taille_entreprise']).size().reset_index(name='obs')
330
- df_categorized_chiffrage_entreprise = df_activites_autonomie_chiffrage_entreprise.groupby("taille_entreprise", observed=True).agg("sum").reset_index()
331
-
332
- fig_activites_autonomie_entreprise = make_subplots(rows=5, cols=1, shared_xaxes=True)
333
- fig_activites_autonomie_entreprise.add_trace(
334
- go.Bar(x=df_activites_autonomie_chiffrage_entreprise.obs, y=df_activites_autonomie_chiffrage_entreprise.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Etude_chiffrage, hovertemplate='<b>%{text}</b><br>X : %{x}<br>', text=df_activites_autonomie_chiffrage_entreprise.taille_entreprise, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Etude et chiffrage"),
335
- 1,
336
- 1,
337
- )
338
- fig_activites_autonomie_entreprise.add_trace(
339
- go.Bar(x=df_activites_autonomie_conception_entreprise.obs, y=df_activites_autonomie_conception_entreprise.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Conception_technique, hovertemplate = '<b>%{text}</b><br>X : %{x}<br>', text = df_activites_autonomie_chiffrage_entreprise.taille_entreprise, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Conception technique"),
340
- 2,
341
- 1,
342
- )
343
- fig_activites_autonomie_entreprise.add_trace(
344
- go.Bar(x=df_activites_autonomie_gestion_entreprise.obs, y=df_activites_autonomie_gestion_entreprise.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Assurer_gestion_administrative_financière, hovertemplate = '<b>%{text}</b><br>X : %{x}<br>', text = df_activites_autonomie_gestion_entreprise.taille_entreprise, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Gestion adm. et fin."),
345
- 3,
346
- 1,
347
- )
348
- fig_activites_autonomie_entreprise.add_trace(
349
- go.Bar(x=df_activites_autonomie_MOE_entreprise.obs, y=df_activites_autonomie_MOE_entreprise.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Contrôler_mise_en_oeuvre, hovertemplate = '<b>%{text}</b><br>X : %{x}<br>', text = df_activites_autonomie_MOE_entreprise.taille_entreprise, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Contrôler MOE"),
350
- 4,
351
- 1,
352
- )
353
- fig_activites_autonomie_entreprise.add_trace(
354
- go.Bar(x=df_activites_autonomie_cloturer_affaire_entreprise.obs, y=df_activites_autonomie_cloturer_affaire_entreprise.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Développer_relation_client_suivre_clôturer_affaire, hovertemplate = '<b>%{text}</b><br>X : %{x}<br>', text = df_activites_autonomie_cloturer_affaire_entreprise.taille_entreprise, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Clôturer affaire"),
355
- 5,
356
- 1,
357
- )
358
- fig_activites_autonomie_entreprise.update_yaxes(categoryorder='category ascending')
359
- fig_activites_autonomie_entreprise.update_layout(title='Activités d\'un CAA junior par taille entreprise', xaxis_tickfont_size=10, yaxis_tickfont_size=10, autosize=False, width=600, height=600, barmode='stack')
360
- elements.append(cl.Plotly(name="chart_activites_autonomie_entreprise", figure=fig_activites_autonomie_entreprise, display="inline", size="large"))
361
-
362
- df_activites_autonomie_chiffrage_statut = df.groupby(['jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Etude_chiffrage', 'fonction_Statut_repondant']).size().reset_index(name='obs')
363
- df_activites_autonomie_conception_statut = df.groupby(['jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Conception_technique', 'fonction_Statut_repondant']).size().reset_index(name='obs')
364
- df_activites_autonomie_gestion_statut = df.groupby(['jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Assurer_gestion_administrative_financière', 'fonction_Statut_repondant']).size().reset_index(name='obs')
365
- df_activites_autonomie_MOE_statut = df.groupby(['jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Contrôler_mise_en_oeuvre', 'fonction_Statut_repondant']).size().reset_index(name='obs')
366
- df_activites_autonomie_cloturer_affaire_statut = df.groupby(['jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Développer_relation_client_suivre_clôturer_affaire', 'fonction_Statut_repondant']).size().reset_index(name='obs')
367
- fig_activites_autonomie_statut = make_subplots(rows=5, cols=1, shared_xaxes=True)
368
- fig_activites_autonomie_statut.add_trace(
369
- go.Bar(x=df_activites_autonomie_chiffrage_statut.obs, y=df_activites_autonomie_chiffrage_statut.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Etude_chiffrage, hovertemplate='<b>%{text}</b><br>X : %{x}<br>', text=df_activites_autonomie_chiffrage_statut.fonction_Statut_repondant, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Etude et chiffrage"),
370
- 1,
371
- 1,
372
- )
373
- fig_activites_autonomie_statut.add_trace(
374
- go.Bar(x=df_activites_autonomie_conception_statut.obs, y=df_activites_autonomie_conception_statut.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Conception_technique, hovertemplate = '<b>%{text}</b><br>X : %{x}<br>', text = df_activites_autonomie_chiffrage_statut.fonction_Statut_repondant, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Conception technique"),
375
- 2,
376
- 1,
377
- )
378
- fig_activites_autonomie_statut.add_trace(
379
- go.Bar(x=df_activites_autonomie_gestion_statut.obs, y=df_activites_autonomie_gestion_statut.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Assurer_gestion_administrative_financière, hovertemplate = '<b>%{text}</b><br>X : %{x}<br>', text = df_activites_autonomie_gestion_statut.fonction_Statut_repondant, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Gestion adm. et fin."),
380
- 3,
381
- 1,
382
- )
383
- fig_activites_autonomie_statut.add_trace(
384
- go.Bar(x=df_activites_autonomie_MOE_statut.obs, y=df_activites_autonomie_MOE_statut.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Contrôler_mise_en_oeuvre, hovertemplate = '<b>%{text}</b><br>X : %{x}<br>', text = df_activites_autonomie_MOE_statut.fonction_Statut_repondant, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Contrôler MOE"),
385
- 4,
386
- 1,
387
- )
388
- fig_activites_autonomie_statut.add_trace(
389
- go.Bar(x=df_activites_autonomie_cloturer_affaire_statut.obs, y=df_activites_autonomie_cloturer_affaire_statut.jeune_chargé_activités_exercées_autonomie_autonomie_partielle_ou_non_Développer_relation_client_suivre_clôturer_affaire, hovertemplate = '<b>%{text}</b><br>X : %{x}<br>', text = df_activites_autonomie_cloturer_affaire_statut.fonction_Statut_repondant, orientation='h', textposition='inside', textangle=0, textfont_color='white', name="Clôturer affaire"),
390
- 5,
391
- 1,
392
- )
393
- fig_activites_autonomie_statut.update_yaxes(categoryorder='category ascending')
394
- fig_activites_autonomie_statut.update_layout(title='Activités d\'un CAA junior par profil des répondants', xaxis_tickfont_size=10, yaxis_tickfont_size=10, autosize=False, width=600, height=600, barmode='stack')
395
- elements.append(cl.Plotly(name="chart_activites_autonomie_statut", figure=fig_activites_autonomie_statut, display="inline", size="large"))
396
-
397
- df5 = df
398
- df5['principales_difficultés_rencontrées'] = df5['principales_difficultés_rencontrées'].str.split(';')
399
- df5 = df5.explode('principales_difficultés_rencontrées')
400
- df_difficultes_rencontrees = df5.groupby('principales_difficultés_rencontrées').size().reset_index(name='obs')
401
- fig_difficultes_rencontrees = px.bar(df_difficultes_rencontrees, x='obs', y='principales_difficultés_rencontrées', orientation='h', color='obs', title="Les difficultés rencontrées par un CAA", labels={'obs':'nombre'}, color_continuous_scale="Teal", text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple")).update_traces(showlegend=False)
402
- elements.append(cl.Plotly(name="chart_difficultes_rencontrees", figure=fig_difficultes_rencontrees, display="inline", size="large"))
403
- df_difficultes_rencontrees_entreprise = df5.groupby(['principales_difficultés_rencontrées', 'taille_entreprise']).size().reset_index(name='obs')
404
- fig_difficultes_rencontrees_entreprise = px.bar(df_difficultes_rencontrees_entreprise, x='obs', y='principales_difficultés_rencontrées', orientation='h', color='taille_entreprise', title="Les difficultés rencontrées par un CAA par taille d'entreprise", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
405
- elements.append(cl.Plotly(name="chart_difficultes_rencontrees_entreprise", figure=fig_difficultes_rencontrees_entreprise, display="inline", size="large"))
406
- df_difficultes_rencontrees_statut = df5.groupby(['principales_difficultés_rencontrées', 'fonction_Statut_repondant']).size().reset_index(name='obs')
407
- fig_difficultes_rencontrees_statut = px.bar(df_difficultes_rencontrees_statut, x='obs', y='principales_difficultés_rencontrées', orientation='h', color='fonction_Statut_repondant', title="Les difficultés rencontrées par un CAA par profil des répondants", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe, text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple"))
408
- elements.append(cl.Plotly(name="chart_difficultes_rencontrees_statut", figure=fig_difficultes_rencontrees_statut, display="inline", size="large"))
409
-
410
- df_jeune_recrute = df.groupby('jeune_diplômé_recruté_chargé.e_affaires').size().reset_index(name='obs')
411
- fig_jeune_recrute = px.pie(df_jeune_recrute, names='jeune_diplômé_recruté_chargé.e_affaires', values='obs', color='obs', title="Jeune recruté en tant que chargé d’affaires en agencement", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe).update_traces(textposition='inside', textinfo='percent+label').update_layout(font=dict(size=10,color="RebeccaPurple"))
412
- elements.append(cl.Plotly(name="chart_jeune_recrute", figure=fig_jeune_recrute, display="inline", size="large"))
413
-
414
- df6 = df
415
- df6['principaux_enjeux_futurs'] = df6['principaux_enjeux_futurs'].str.split(';')
416
- df6 = df6.explode('principaux_enjeux_futurs')
417
- df_enjeux_futurs = df6.groupby('principaux_enjeux_futurs').size().reset_index(name='obs')
418
- fig_enjeux_futurs = px.bar(df_enjeux_futurs, x='obs', y='principaux_enjeux_futurs', orientation='h', color='obs', title="Enjeux futurs du métier de CAA", labels={'obs':'nombre'}, color_continuous_scale="Teal", text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple")).update_traces(showlegend=False)
419
- elements.append(cl.Plotly(name="chart_enjeux_futurs", figure=fig_enjeux_futurs, display="inline", size="large"))
420
-
421
- df_BIM = df.groupby('BIM_futur').size().reset_index(name='obs')
422
- fig_BIM = px.pie(df_BIM, names='BIM_futur', values='obs', color='obs', title="la place du BIM", labels={'obs':'nombre'}, color_discrete_sequence=px.colors.qualitative.Safe).update_traces(textposition='inside', textinfo='percent+label').update_layout(font=dict(size=10,color="RebeccaPurple"))
423
- elements.append(cl.Plotly(name="chart_BIM", figure=fig_BIM, display="inline", size="large"))
424
-
425
- df_BIM_echeance = df.groupby('BIM_futur_quelle_échéance').size().reset_index(name='obs')
426
- fig_BIM_echeance = px.bar(df_BIM_echeance, x='obs', y='BIM_futur_quelle_échéance', orientation='h', color='obs', title="la place du BIM, échéance", labels={'obs':'nombre'}, color_continuous_scale="Teal", text_auto=True).update_layout(font=dict(size=10,color="RebeccaPurple")).update_traces(showlegend=False)
427
- elements.append(cl.Plotly(name="chart_BIM_echeance", figure=fig_BIM_echeance, display="inline", size="large"))
428
-
429
- content_all = "Tableaux des données de La \"taille des entreprises ayant répondu\"\n" + df_taille.to_string() + "\n\nTableaux des données de \"L’engagement dans le domaine de l’agencement\"\n" + df_temps.to_string() + "\n\nTableaux des données de \"L’engagement dans le domaine de l’agencement\" par taille d'entreprise\n" + df_temps_entreprise.to_string() + "\n\nTableaux des données de \"Le nombre de chargé.e d’affaires en agencement\"\n" + df_nb_charge.to_string() + "\n\nTableaux des données de \"Le nombre de chargé.e d’affaires en agencement par taille d'entreprise\"\n" + df_nb_charge_entreprise.to_string() + "\n\nTableaux des données de \"Le nombre de chargé.e d’affaires en agencement par année d'engagement\"\n" + df_nb_charge_engagement.to_string() + "\n\nTableaux des données de \"Le profil des répondants\"\n" + df_statut.to_string() + "\n\nTableaux des données de \"Les principaux interlocuteurs du CAA\"\n" + df_interlocuteur.to_string() + "\n\nTableaux des données de \"Les principaux interlocuteurs du CAA\" par taille d'entreprise\n" + df_interlocuteur_entreprise.to_string() + "\n\nTableaux des données de \"Les principaux interlocuteurs du CAA\" par nombre chargé.e d'affaires\n" + df_interlocuteur_nb_charge.to_string() + "\n\nTableaux des données de \"Les principales compétences attendues\"\n" + df_competences.to_string() + "\n\nTableaux des données de \"Les principales compétences attendues\" par taille d'entreprise\n" + df_competences_entreprise.to_string() + "\n\nTableaux des données de \"Les principales compétences attendues\" par nombre chargé.e d'affaires\n" + df_competences_nb_charge.to_string() + "\n\nTableaux des données de \"Les compétences relationnelles attendues\"\n" + df_competences_relationnelles.to_string() + "\n\nTableaux des données de \"Les compétences relationnelles attendues par taille entreprise\"\n" + df_competences_relationnelles_entreprise.to_string() + "\n\nTableaux des données de \"Les compétences relationnelles attendues par nombre chargé.e d'affaires\"\n" + df_competences_relationnelles_nb_charge.to_string() + "\n\nTableaux des données de \"Les compétences en gestion attendues\"\n" + df_competences_gestion.to_string() + "\n\nTableaux des données de \"Les compétences en gestion attendues par taille entreprise\"\n" + df_competences_gestion_entreprise.to_string() + "\n\nTableaux des données de \"Les compétences en gestion attendues par nombre chargé.e d'affaires\"\n" + df_competences_gestion_nb_charge.to_string() + "\n\nTableaux des données de \"Difficulté de recruter un CAA\"\n" + df_difficulte.to_string() + "\n\nTableaux des données de \"Formations organisées pour les CAA\"\n" + df_formation.to_string() + "\n\nTableaux des données de \"Formations organisées pour les CAA par taille entreprise\"\n" + df_formation_entreprise.to_string() + "\n\nTableaux des données de \"Formations organisées pour les CAA par nombre chargé.e d'affaires\"\n" + df_formation_nb_charge.to_string() + "\n\nTableaux des données de \"Activités d’un CAA junior : Etude et Chiffrage\"\n" + df_activites_autonomie_chiffrage.to_string() + "\n\nTableaux des données de \"Activités d’un CAA junior : Conception Technique\"\n" + df_activites_autonomie_conception.to_string() + "\n\nTableaux des données de \"Activités d’un CAA junior : Gestion Administrative et Financière\"\n" + df_activites_autonomie_gestion.to_string() + "\n\nTableaux des données de \"Activités d’un CAA junior : Mise en Oeuvre\"\n" + df_activites_autonomie_MOE.to_string() + "\n\nTableaux des données de \"Activités d’un CAA junior : Relation Client et Cloturer Affaire\"\n" + df_activites_autonomie_cloturer_affaire.to_string() + "\n\nTableaux des données de \"Activités d’un CAA junior : Etude et Chiffrage par taille entreprise\"\n" + df_categorized_chiffrage_entreprise.to_string()
430
- content_all_html = "Tableaux des données de La \"taille des entreprises ayant répondu\"\n" + df_taille.to_html() + "\n\nTableaux des données de \"L’engagement dans le domaine de l’agencement\"\n" + df_temps.to_html() + "\n\nTableaux des données de \"L’engagement dans le domaine de l’agencement\" par taille d'entreprise\n" + df_temps_entreprise.to_html() + "\n\nTableaux des données de \"Le nombre de chargé.e d’affaires en agencement\"\n" + df_nb_charge.to_html() + "\n\nTableaux des données de \"Le nombre de chargé.e d’affaires en agencement par taille d'entreprise\"\n" + df_nb_charge_entreprise.to_html() + "\n\nTableaux des données de \"Le nombre de chargé.e d’affaires en agencement par année d'engagement\"\n" + df_nb_charge_engagement.to_html() + "\n\nTableaux des données de \"Le profil des répondants\"\n" + df_statut.to_html() + "\n\nTableaux des données de \"Les principaux interlocuteurs du CAA\"\n" + df_interlocuteur.to_html() + "\n\nTableaux des données de \"Les principaux interlocuteurs du CAA\" par taille d'entreprise\n" + df_interlocuteur_entreprise.to_html() + "\n\nTableaux des données de \"Les principaux interlocuteurs du CAA\" par nombre chargé.e d'affaires\n" + df_interlocuteur_nb_charge.to_html() + "\n\nTableaux des données de \"Les principales compétences attendues\"\n" + df_competences.to_html() + "\n\nTableaux des données de \"Les principales compétences attendues\" par taille d'entreprise\n" + df_competences_entreprise.to_html() + "\n\nTableaux des données de \"Les principales compétences attendues\" par nombre chargé.e d'affaires\n" + df_competences_nb_charge.to_html() + "\n\nTableaux des données de \"Les compétences relationnelles attendues\"\n" + df_competences_relationnelles.to_html() + "\n\nTableaux des données de \"Les compétences relationnelles attendues par taille entreprise\"\n" + df_competences_relationnelles_entreprise.to_html() + "\n\nTableaux des données de \"Les compétences relationnelles attendues par nombre chargé.e d'affaires\"\n" + df_competences_relationnelles_nb_charge.to_html() + "\n\nTableaux des données de \"Les compétences en gestion attendues\"\n" + df_competences_gestion.to_html() + "\n\nTableaux des données de \"Les compétences en gestion attendues par taille entreprise\"\n" + df_competences_gestion_entreprise.to_html() + "\n\nTableaux des données de \"Les compétences en gestion attendues par nombre chargé.e d'affaires\"\n" + df_competences_gestion_nb_charge.to_html() + "\n\nTableaux des données de \"Difficulté de recruter un CAA\"\n" + df_difficulte.to_html() + "\n\nTableaux des données de \"Formations organisées pour les CAA\"\n" + df_formation.to_html() + "\n\nTableaux des données de \"Formations organisées pour les CAA par taille entreprise\"\n" + df_formation_entreprise.to_html() + "\n\nTableaux des données de \"Formations organisées pour les CAA par nombre chargé.e d'affaires\"\n" + df_formation_nb_charge.to_html() + "\n\nTableaux des données de \"Activités d’un CAA junior : Etude et Chiffrage\"\n" + df_activites_autonomie_chiffrage.to_html() + "\n\nTableaux des données de \"Activités d’un CAA junior : Conception Technique\"\n" + df_activites_autonomie_conception.to_html() + "\n\nTableaux des données de \"Activités d’un CAA junior : Gestion Administrative et Financière\"\n" + df_activites_autonomie_gestion.to_html() + "\n\nTableaux des données de \"Activités d’un CAA junior : Mise en Oeuvre\"\n" + df_activites_autonomie_MOE.to_html() + "\n\nTableaux des données de \"Activités d’un CAA junior : Relation Client et Cloturer Affaire\"\n" + df_activites_autonomie_cloturer_affaire.to_html() + "\n\nTableaux des données de \"Activités d’un CAA junior : Etude et Chiffrage par taille entreprise\"\n" + df_activites_autonomie_chiffrage_entreprise.to_html() + df_categorized_chiffrage_entreprise.to_html()
431
- tableau_all = [cl.Text(name="Tableaux", content=content_all_html, display="side")]
432
- await cl.Message(content="📚 Tableaux de toutes les données", elements=tableau_all,).send()
433
- actions = [cl.Action(name="Download", value=content_all, description="download_tableau")]
434
- await cl.Message(content="📥 Télécharger l'ensemble des tableaux de données ayant servi à la datavisualisation", actions=actions).send()
435
-
436
- await cl.Message(content="Datavisualisation de l'enquête des recruteurs des chargé.e.s d'affaires en agencement", elements=elements).send()
437
-
438
- wd_principaux_interlocuteurs = " ".join(i for i in df1.principaux_interlocuteurs)
439
- exclure_mots = ['d', 'du', 'de', 'la', 'des', 'le', 'et', 'est', 'elle', 'une', 'en', 'que', 'aux', 'qui', 'ces', 'les', 'dans', 'sur', 'l', 'un', 'pour', 'par', 'il', 'ou', 'à', 'ce', 'a', 'sont', 'cas', 'plus', 'leur', 'se', 's', 'vous', 'au', 'c', 'aussi', 'toutes', 'autre', 'comme']
440
- elements_wordcloud_principaux_interlocuteurs = []
441
- wordcloud_principaux_interlocuteurs = WordCloud(background_color='white',
442
- stopwords=exclure_mots, max_words=80).generate(wd_principaux_interlocuteurs)
443
- fig_wordcloud_principaux_interlocuteurs = plt.figure(1,figsize=(12,15))
444
- plt.imshow(wordcloud_principaux_interlocuteurs,interpolation="none")
445
- plt.axis('off')
446
- plt.title("Nuage de mots des principaux interlocuteurs")
447
- elements_wordcloud_principaux_interlocuteurs.append(cl.Pyplot(name="plot_wordcloud_principaux_interlocuteurs", figure=fig_wordcloud_principaux_interlocuteurs, size="large", display="inline"))
448
-
449
- options_entreprise1 = ['10 à 50 employés']
450
- df1_entreprise1 = df1.loc[df1['taille_entreprise'].isin(options_entreprise1)]
451
- wd_principaux_interlocuteurs_entreprise1 = " ".join(i for i in df1_entreprise1.principaux_interlocuteurs)
452
- wordcloud_principaux_interlocuteurs_entreprise1 = WordCloud(background_color='white',
453
- stopwords=exclure_mots, max_words=80).generate(wd_principaux_interlocuteurs_entreprise1)
454
- fig_wordcloud_principaux_interlocuteurs_entreprise1 = plt.figure(1,figsize=(12,15))
455
- plt.imshow(wordcloud_principaux_interlocuteurs_entreprise1,interpolation="none")
456
- plt.axis('off')
457
- plt.title("Nuage de mots des principaux interlocuteurs entreprise 10 à 50 employés")
458
- elements_wordcloud_principaux_interlocuteurs.append(cl.Pyplot(name="plot_wordcloud_principaux_interlocuteurs_entreprise_10_50", figure=fig_wordcloud_principaux_interlocuteurs_entreprise1, size="large", display="inline"))
459
-
460
- options_entreprise2 = ['51 à 100 employés']
461
- df1_entreprise2 = df1.loc[df1['taille_entreprise'].isin(options_entreprise2)]
462
- wd_principaux_interlocuteurs_entreprise2 = " ".join(i for i in df1_entreprise2.principaux_interlocuteurs)
463
- wordcloud_principaux_interlocuteurs_entreprise2 = WordCloud(background_color='white',
464
- stopwords=exclure_mots, max_words=80).generate(wd_principaux_interlocuteurs_entreprise2)
465
- fig_wordcloud_principaux_interlocuteurs_entreprise2 = plt.figure(1,figsize=(12,15))
466
- plt.imshow(wordcloud_principaux_interlocuteurs_entreprise2,interpolation="none")
467
- plt.axis('off')
468
- plt.title("Nuage de mots des principaux interlocuteurs entreprise 51 à 100 employés")
469
- elements_wordcloud_principaux_interlocuteurs.append(cl.Pyplot(name="plot_wordcloud_principaux_interlocuteurs_entreprise_51_100", figure=fig_wordcloud_principaux_interlocuteurs_entreprise2, size="large", display="inline"))
470
-
471
- options_entreprise3 = ['Moins de 10 employés']
472
- df1_entreprise3 = df1.loc[df1['taille_entreprise'].isin(options_entreprise3)]
473
- wd_principaux_interlocuteurs_entreprise3 = " ".join(i for i in df1_entreprise3.principaux_interlocuteurs)
474
- wordcloud_principaux_interlocuteurs_entreprise3 = WordCloud(background_color='white',
475
- stopwords=exclure_mots, max_words=80).generate(wd_principaux_interlocuteurs_entreprise3)
476
- fig_wordcloud_principaux_interlocuteurs_entreprise3 = plt.figure(1,figsize=(12,15))
477
- plt.imshow(wordcloud_principaux_interlocuteurs_entreprise3,interpolation="none")
478
- plt.axis('off')
479
- plt.title("Nuage de mots des principaux interlocuteurs entreprise Moins de 10 employés")
480
- elements_wordcloud_principaux_interlocuteurs.append(cl.Pyplot(name="plot_wordcloud_principaux_interlocuteurs_entreprise_moins_10", figure=fig_wordcloud_principaux_interlocuteurs_entreprise3, size="large", display="inline"))
481
-
482
- options_entreprise4 = ['Plus de 100 employés']
483
- df1_entreprise4 = df1.loc[df1['taille_entreprise'].isin(options_entreprise4)]
484
- wd_principaux_interlocuteurs_entreprise4 = " ".join(i for i in df1_entreprise4.principaux_interlocuteurs)
485
- wordcloud_principaux_interlocuteurs_entreprise4 = WordCloud(background_color='white',
486
- stopwords=exclure_mots, max_words=80).generate(wd_principaux_interlocuteurs_entreprise4)
487
- fig_wordcloud_principaux_interlocuteurs_entreprise4 = plt.figure(1,figsize=(12,15))
488
- plt.imshow(wordcloud_principaux_interlocuteurs_entreprise4,interpolation="none")
489
- plt.axis('off')
490
- plt.title("Nuage de mots des principaux interlocuteurs entreprise Plus de 100 employés")
491
- elements_wordcloud_principaux_interlocuteurs.append(cl.Pyplot(name="plot_wordcloud_principaux_interlocuteurs_entreprise_plus_100", figure=fig_wordcloud_principaux_interlocuteurs_entreprise4, size="large", display="inline"))
492
-
493
- await cl.Message( content="Nuage de mots des principaux interlocuteurs et croisement avec la taille des entreprises",elements=elements_wordcloud_principaux_interlocuteurs,).send()
494
-
495
  @cl.on_message
496
  async def on_message(message: cl.Message):
497
  await cl.Message(f"> SURVEYIA").send()
 
180
  @cl.on_chat_start
181
  async def on_chat_start():
182
  await cl.Message(f"> SURVEYIA").send()
183
+ surveyCaa()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
184
  @cl.on_message
185
  async def on_message(message: cl.Message):
186
  await cl.Message(f"> SURVEYIA").send()