Skip to content

Commit 952d295

Browse files
committed
Feat(metrics): Result for paper
1 parent d40f9e3 commit 952d295

1 file changed

Lines changed: 20 additions & 13 deletions

File tree

codeclash/analysis/metrics/elo2.py

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1014,26 +1014,33 @@ def write_latex_table(results: dict[str, dict], output_dir: Path) -> None:
10141014

10151015
lines = []
10161016
lines.append("% LaTeX commands for formatting ELO results")
1017-
lines.append(r"\newcommand{\eloSingleArenaResult}[1]{\textcolor{gray}{\small #1}}")
1018-
lines.append(r"\newcommand{\eloMainResult}[1]{#1}")
1017+
lines.append(r"\newcommand{\eloSingleArenaResult}[1]{% #1=formatted number")
1018+
lines.append(r" \begin{tikzpicture}[baseline=(text.base)]")
1019+
lines.append(r" \pgfmathsetmacro{\barwidth}{#1 * 0.0007}")
1020+
lines.append(r" \fill[black!15] (0, -0.15) rectangle (\barwidth, 0.25);")
1021+
lines.append(r" \node[anchor=west,text=black,font=\footnotesize] (text) at (-0.05, 0.05) {#1};")
1022+
lines.append(r" \end{tikzpicture}%")
1023+
lines.append(r"}")
1024+
lines.append(r"\newcommand{\eloMainResult}[1]{% #1=raw number")
1025+
lines.append(r" \begin{tikzpicture}[baseline=(text.base)]")
1026+
lines.append(r" \pgfmathsetmacro{\barwidth}{#1 * 0.001}")
1027+
lines.append(r" \fill[chart!35] (0, -0.15) rectangle (\barwidth, 0.25);")
1028+
lines.append(r" \node[anchor=west,font=\bfseries] (text) at (0, 0.05) {#1};")
1029+
lines.append(r" \end{tikzpicture}%")
1030+
lines.append(r"}")
10191031
lines.append("")
10201032
lines.append(r"\begin{table}[t]")
10211033
lines.append(r"\centering")
1022-
lines.append(r"\begin{tabular}{l|" + "c" * len(games_in_table) + "|c}")
1034+
lines.append(r"\setlength{\tabcolsep}{3pt}")
1035+
lines.append(r"\renewcommand{\arraystretch}{0.9}")
1036+
lines.append(r"\begin{tabular}{l|" + "l" * len(games_in_table) + "|l}")
10231037
lines.append(r"\toprule")
10241038

10251039
display_names = [g.replace("HuskyBench", "Poker") for g in games_in_table]
1026-
header_parts = [""] + [rf"\scriptsize{{{g}}}" for g in display_names] + [r"\textbf{All}"]
1040+
header_parts = [""] + [rf"\scriptsize{{{g}}}" for g in display_names] + [r"\multicolumn{1}{c}{\textbf{All}}"]
10271041
lines.append(" & ".join(header_parts) + r" \\")
10281042
lines.append(r"\midrule")
10291043

1030-
def format_elo(elo: float) -> str:
1031-
"""Format ELO number with phantom padding for numbers < 1000"""
1032-
elo_int = int(elo)
1033-
if elo_int < 1000:
1034-
return rf"\phantom{{0}}{elo_int}"
1035-
return str(elo_int)
1036-
10371044
for player, all_elo in sorted_players:
10381045
display_name = MODEL_TO_DISPLAY_NAME.get(player, player)
10391046
row_parts = [display_name.replace("_", r"\_")]
@@ -1045,13 +1052,13 @@ def format_elo(elo: float) -> str:
10451052
idx = game_result["players"].index(player)
10461053
strength = game_result["strengths"][idx]
10471054
elo = BradleyTerryFitter.bt_to_elo(strength)
1048-
row_parts.append(rf"\eloSingleArenaResult{{{format_elo(elo)}}}")
1055+
row_parts.append(rf"\eloSingleArenaResult{{{int(elo)}}}")
10491056
else:
10501057
row_parts.append("--")
10511058
else:
10521059
row_parts.append("--")
10531060

1054-
row_parts.append(rf"\eloMainResult{{{format_elo(all_elo)}}}")
1061+
row_parts.append(rf"\eloMainResult{{{int(all_elo)}}}")
10551062
lines.append(" & ".join(row_parts) + r" \\")
10561063

10571064
lines.append(r"\bottomrule")

0 commit comments

Comments
 (0)