Spaces:
Runtime error
Runtime error
Update visualization.py
Browse files- visualization.py +19 -19
visualization.py
CHANGED
@@ -9,57 +9,57 @@ def create_charts(results):
|
|
9 |
for speaker_id, data in results.items():
|
10 |
charts[speaker_id] = {}
|
11 |
explanations[speaker_id] = {}
|
12 |
-
|
13 |
# Extract general impression
|
14 |
general_impressions[speaker_id] = data.get('general_impression', "No general impression provided.")
|
15 |
-
|
16 |
# Attachment Styles
|
17 |
attachment_data = data['attachments']
|
18 |
labels = ['Secured', 'Anxious-Preoccupied', 'Dismissive-Avoidant', 'Fearful-Avoidant']
|
19 |
-
values = [getattr(attachment_data, '
|
20 |
-
getattr(attachment_data, '
|
21 |
-
getattr(attachment_data, '
|
22 |
-
getattr(attachment_data, '
|
23 |
colors = ['blue', 'orange', 'green', 'red']
|
24 |
|
25 |
fig = go.Figure(data=[go.Bar(x=labels, y=values, marker_color=colors)])
|
26 |
fig.update_layout(title=f'{speaker_id}: Attachment Styles', yaxis_range=[0, 1])
|
27 |
charts[speaker_id]['attachment'] = fig
|
28 |
-
explanations[speaker_id]['attachment'] = attachment_data.
|
29 |
|
30 |
# Big Five Traits
|
31 |
bigfive_data = data['bigfive']
|
32 |
labels = ['Extraversion', 'Agreeableness', 'Conscientiousness', 'Neuroticism', 'Openness']
|
33 |
-
values = [bigfive_data.
|
34 |
-
bigfive_data.
|
35 |
colors = ['blue', 'green', 'red', 'purple', 'orange']
|
36 |
|
37 |
fig = go.Figure(data=[go.Bar(x=labels, y=values, marker_color=colors)])
|
38 |
-
fig.update_layout(title=f'{speaker_id}: Big Five Traits', yaxis_range=[
|
39 |
charts[speaker_id]['bigfive'] = fig
|
40 |
-
explanations[speaker_id]['bigfive'] = bigfive_data.
|
41 |
|
42 |
# Personality Disorders
|
43 |
personality_data = data['personalities']
|
44 |
labels = ['Antisocial', 'Narcissistic', 'Depressed', 'Anxious-Avoidant',
|
45 |
'Obsessive', 'Paranoid', 'Borderline', 'Dependent', 'Schizoid-Schizotypal']
|
46 |
-
values = [personality_data.
|
47 |
-
personality_data.
|
48 |
-
personality_data.
|
49 |
-
personality_data.
|
50 |
-
personality_data.
|
51 |
colors = ['black', 'orange', 'gray', 'green', 'brown', 'purple', 'red', 'cyan', 'gold']
|
52 |
|
53 |
fig = go.Figure(data=[go.Bar(x=labels, y=values, marker_color=colors)])
|
54 |
fig.update_layout(title=f'{speaker_id}: Personality Disorders', yaxis_range=[0, 5])
|
55 |
charts[speaker_id]['personality'] = fig
|
56 |
-
explanations[speaker_id]['personality'] = personality_data.
|
57 |
|
58 |
# Attachment Dimensions (Radar Chart)
|
59 |
dimensions_data = data['attachments']
|
60 |
labels = ['Self', 'Others', 'Anxiety', 'Avoidance']
|
61 |
-
values = [dimensions_data.
|
62 |
-
dimensions_data.
|
63 |
|
64 |
fig = go.Figure(data=go.Scatterpolar(
|
65 |
r=values,
|
|
|
9 |
for speaker_id, data in results.items():
|
10 |
charts[speaker_id] = {}
|
11 |
explanations[speaker_id] = {}
|
12 |
+
|
13 |
# Extract general impression
|
14 |
general_impressions[speaker_id] = data.get('general_impression', "No general impression provided.")
|
15 |
+
|
16 |
# Attachment Styles
|
17 |
attachment_data = data['attachments']
|
18 |
labels = ['Secured', 'Anxious-Preoccupied', 'Dismissive-Avoidant', 'Fearful-Avoidant']
|
19 |
+
values = [getattr(attachment_data, 'secured', 0),
|
20 |
+
getattr(attachment_data, 'anxious_preoccupied', 0),
|
21 |
+
getattr(attachment_data, 'dismissive_avoidant', 0),
|
22 |
+
getattr(attachment_data, 'fearful_avoidant', 0)]
|
23 |
colors = ['blue', 'orange', 'green', 'red']
|
24 |
|
25 |
fig = go.Figure(data=[go.Bar(x=labels, y=values, marker_color=colors)])
|
26 |
fig.update_layout(title=f'{speaker_id}: Attachment Styles', yaxis_range=[0, 1])
|
27 |
charts[speaker_id]['attachment'] = fig
|
28 |
+
explanations[speaker_id]['attachment'] = attachment_data.explanation
|
29 |
|
30 |
# Big Five Traits
|
31 |
bigfive_data = data['bigfive']
|
32 |
labels = ['Extraversion', 'Agreeableness', 'Conscientiousness', 'Neuroticism', 'Openness']
|
33 |
+
values = [bigfive_data.extraversion, bigfive_data.agreeableness,
|
34 |
+
bigfive_data.conscientiousness, bigfive_data.neuroticism, bigfive_data.openness]
|
35 |
colors = ['blue', 'green', 'red', 'purple', 'orange']
|
36 |
|
37 |
fig = go.Figure(data=[go.Bar(x=labels, y=values, marker_color=colors)])
|
38 |
+
fig.update_layout(title=f'{speaker_id}: Big Five Traits', yaxis_range=[-10, 10])
|
39 |
charts[speaker_id]['bigfive'] = fig
|
40 |
+
explanations[speaker_id]['bigfive'] = bigfive_data.explanation
|
41 |
|
42 |
# Personality Disorders
|
43 |
personality_data = data['personalities']
|
44 |
labels = ['Antisocial', 'Narcissistic', 'Depressed', 'Anxious-Avoidant',
|
45 |
'Obsessive', 'Paranoid', 'Borderline', 'Dependent', 'Schizoid-Schizotypal']
|
46 |
+
values = [personality_data.antisocial_psychopathic, personality_data.narcissistic,
|
47 |
+
personality_data.depressed, personality_data.anxious_avoidant,
|
48 |
+
personality_data.obsessional, personality_data.paranoid,
|
49 |
+
personality_data.borderline_dysregulated, personality_data.dependent_victimized,
|
50 |
+
personality_data.schizoid_schizotypal]
|
51 |
colors = ['black', 'orange', 'gray', 'green', 'brown', 'purple', 'red', 'cyan', 'gold']
|
52 |
|
53 |
fig = go.Figure(data=[go.Bar(x=labels, y=values, marker_color=colors)])
|
54 |
fig.update_layout(title=f'{speaker_id}: Personality Disorders', yaxis_range=[0, 5])
|
55 |
charts[speaker_id]['personality'] = fig
|
56 |
+
explanations[speaker_id]['personality'] = personality_data.explanation
|
57 |
|
58 |
# Attachment Dimensions (Radar Chart)
|
59 |
dimensions_data = data['attachments']
|
60 |
labels = ['Self', 'Others', 'Anxiety', 'Avoidance']
|
61 |
+
values = [dimensions_data.self_model, dimensions_data.others_model,
|
62 |
+
dimensions_data.anxiety, dimensions_data.avoidance]
|
63 |
|
64 |
fig = go.Figure(data=go.Scatterpolar(
|
65 |
r=values,
|