idolezal commited on
Commit
24ab55a
ยท
1 Parent(s): 1cfab55

Another try with bokeh2iframe()

Browse files
Files changed (3) hide show
  1. analyze_winscore.py +32 -0
  2. app.py +4 -0
  3. server.py +5 -5
analyze_winscore.py CHANGED
@@ -21,6 +21,38 @@ def bokeh2html(obj):
21
 
22
  return bokeh_html
23
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  def bokeh2json(obj):
25
  from bokeh.document import Document
26
 
 
21
 
22
  return bokeh_html
23
 
24
+ def bokeh2fullhtml(obj):
25
+ from bokeh.embed import components
26
+ from bokeh.resources import CDN
27
+
28
+ script, div = components(obj, CDN)
29
+ bokeh_html = f"""<!DOCTYPE html>
30
+ <html lang="en">
31
+ <head>
32
+ {CDN.render()}
33
+ </head>
34
+ <body>
35
+ {div}
36
+ {script}
37
+ </body>
38
+ </html>"""
39
+
40
+ return bokeh_html
41
+
42
+ def bokeh2iframe(obj):
43
+ import html
44
+
45
+ srcdoc = bokeh2fullhtml(obj)
46
+ srcdoc = html.escape(srcdoc)
47
+
48
+ return f'''
49
+ <iframe
50
+ srcdoc="{srcdoc}"
51
+ width="100%" height="450"
52
+ style="border:none;"
53
+ ></iframe>
54
+ '''
55
+
56
  def bokeh2json(obj):
57
  from bokeh.document import Document
58
 
app.py CHANGED
@@ -540,6 +540,10 @@ tr.row_odd {
540
  justify-content: normal;
541
  }
542
 
 
 
 
 
543
  """
544
 
545
  custom_js = """
 
540
  justify-content: normal;
541
  }
542
 
543
+ .prose {
544
+ max-width: none;
545
+ }
546
+
547
  """
548
 
549
  custom_js = """
server.py CHANGED
@@ -28,7 +28,7 @@ import pandas as pd
28
  from huggingface_hub import HfApi, snapshot_download
29
 
30
  from compare_significance import SUPPORTED_METRICS
31
- from analyze_winscore import bokeh2html
32
 
33
  VISIBLE_METRICS = SUPPORTED_METRICS + ["macro_f1"]
34
 
@@ -377,12 +377,12 @@ class LeaderboardServer:
377
  self.tournament_dataframes_csv = tournament_dataframes_csv
378
 
379
  leaderboard_scatter_plots = {kind_of_p_value: {
380
- category: bokeh2html(self._get_leaderboard_scatter_plot(category=category, kind_of_p_value=kind_of_p_value))
381
  for category in categories
382
  } for kind_of_p_value in self.KINDS_OF_P_VALUE}
383
 
384
  leaderboard_heatmaps = {kind_of_p_value: {
385
- category: bokeh2html(self._get_leaderboard_heatmap(category=category, kind_of_p_value=kind_of_p_value))
386
  for category in categories
387
  } for kind_of_p_value in self.KINDS_OF_P_VALUE}
388
 
@@ -739,7 +739,7 @@ class LeaderboardServer:
739
  with self.var_lock.ro:
740
  return self.leaderboard_scatter_plots[kind_of_p_value][category]
741
  else:
742
- return bokeh2html(self._get_leaderboard_scatter_plot(pre_submit=pre_submit, category=category, kind_of_p_value=kind_of_p_value))
743
 
744
  def _get_leaderboard_scatter_plot(self, pre_submit=None, category=None, kind_of_p_value=None):
745
  import numpy as np
@@ -795,7 +795,7 @@ class LeaderboardServer:
795
  with self.var_lock.ro:
796
  return self.leaderboard_heatmaps[kind_of_p_value][category]
797
  else:
798
- return bokeh2html(self._get_leaderboard_heatmap(pre_submit=pre_submit, category=category, kind_of_p_value=kind_of_p_value))
799
 
800
  def _get_leaderboard_heatmap(self, pre_submit=None, category=None, kind_of_p_value=None):
801
  from analyze_winscore import get_ldb_records, create_heatmap
 
28
  from huggingface_hub import HfApi, snapshot_download
29
 
30
  from compare_significance import SUPPORTED_METRICS
31
+ from analyze_winscore import bokeh2iframe
32
 
33
  VISIBLE_METRICS = SUPPORTED_METRICS + ["macro_f1"]
34
 
 
377
  self.tournament_dataframes_csv = tournament_dataframes_csv
378
 
379
  leaderboard_scatter_plots = {kind_of_p_value: {
380
+ category: bokeh2iframe(self._get_leaderboard_scatter_plot(category=category, kind_of_p_value=kind_of_p_value))
381
  for category in categories
382
  } for kind_of_p_value in self.KINDS_OF_P_VALUE}
383
 
384
  leaderboard_heatmaps = {kind_of_p_value: {
385
+ category: bokeh2iframe(self._get_leaderboard_heatmap(category=category, kind_of_p_value=kind_of_p_value))
386
  for category in categories
387
  } for kind_of_p_value in self.KINDS_OF_P_VALUE}
388
 
 
739
  with self.var_lock.ro:
740
  return self.leaderboard_scatter_plots[kind_of_p_value][category]
741
  else:
742
+ return bokeh2iframe(self._get_leaderboard_scatter_plot(pre_submit=pre_submit, category=category, kind_of_p_value=kind_of_p_value))
743
 
744
  def _get_leaderboard_scatter_plot(self, pre_submit=None, category=None, kind_of_p_value=None):
745
  import numpy as np
 
795
  with self.var_lock.ro:
796
  return self.leaderboard_heatmaps[kind_of_p_value][category]
797
  else:
798
+ return bokeh2iframe(self._get_leaderboard_heatmap(pre_submit=pre_submit, category=category, kind_of_p_value=kind_of_p_value))
799
 
800
  def _get_leaderboard_heatmap(self, pre_submit=None, category=None, kind_of_p_value=None):
801
  from analyze_winscore import get_ldb_records, create_heatmap