aquibmoin commited on
Commit
3e7de24
·
verified ·
1 Parent(s): d751488

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -12
app.py CHANGED
@@ -40,20 +40,32 @@ def format_ragas_results(ragas_results):
40
  ]
41
 
42
  def plot_radar_chart(ragas_results):
43
- scores_dict = ragas_results.scores[0]
 
 
 
 
 
44
  labels = list(scores_dict.keys())
45
  values = list(scores_dict.values())
46
- values.append(values[0]) # Close the loop
47
- labels.append(labels[0])
48
-
49
- fig, ax = plt.subplots(figsize=(6, 6), subplot_kw=dict(polar=True))
50
- angles = [n / float(len(labels)) * 2 * 3.14159 for n in range(len(labels))]
51
- ax.plot(angles, values, 'b-', linewidth=2)
52
- ax.fill(angles, values, 'skyblue', alpha=0.4)
53
- ax.set_yticklabels([])
54
- ax.set_xticks(angles)
55
- ax.set_xticklabels(labels, fontsize=9)
56
- ax.set_title("RAGAS Evaluation Radar Chart", size=14)
 
 
 
 
 
 
 
57
 
58
  chart_path = "radar_chart.png"
59
  fig.savefig(chart_path)
 
40
  ]
41
 
42
  def plot_radar_chart(ragas_results):
43
+ # Extract first sample if multiple scores
44
+ if isinstance(ragas_results.scores, list):
45
+ scores_dict = ragas_results.scores[0] # first sample
46
+ else:
47
+ scores_dict = ragas_results.scores
48
+
49
  labels = list(scores_dict.keys())
50
  values = list(scores_dict.values())
51
+
52
+ # Close the loop for radar chart
53
+ values += values[:1]
54
+ angles = np.linspace(0, 2 * np.pi, len(labels), endpoint=False).tolist()
55
+ angles += angles[:1]
56
+
57
+ fig, ax = plt.subplots(figsize=(6,6), subplot_kw=dict(polar=True))
58
+
59
+ ax.fill(angles, values, color='skyblue', alpha=0.4)
60
+ ax.plot(angles, values, color='blue', linewidth=2)
61
+
62
+ ax.set_yticks([0.2, 0.4, 0.6, 0.8, 1.0])
63
+ ax.set_yticklabels(['0.2', '0.4', '0.6', '0.8', '1.0'])
64
+
65
+ ax.set_xticks(angles[:-1])
66
+ ax.set_xticklabels(labels)
67
+
68
+ ax.set_title('RAGAS Metrics Radar Chart', size=14, y=1.05)
69
 
70
  chart_path = "radar_chart.png"
71
  fig.savefig(chart_path)