This is a 2D companion to the 3D Chatbot Arena visualizer, built on the exact same Bradley-Terry/Elo mathematics but rendered as a different mechanic: instead of bars rising in a 3D scene, every model is a dot sliding along a horizontal rating axis, and a second panel plots a convergence curve — Spearman ρ over the whole battle history — that the 3D version never showed as a curve, only as a single live number. Each model has a hidden true skill s (never displayed) governing the real win probability via the logistic Bradley-Terry form:
P(A beats B) = 1 / (1 + 10^(-(s_A - s_B) / 400))
The board only sees outcomes. After each battle both contestants' visible Elo ratings move from the expected score computed with their current ratings R:
E_A = 1 / (1 + 10^((R_B - R_A) / 400))
R_A' = R_A + K · (S_A - E_A) where S_A ∈ {0, 1} is the actual result
- Rating axis (left) — every dot's x-position is its live Elo rating; a thin trail line marks each dot's position 1 second ago so you can see which way it is currently moving.
- Convergence curve (right) — plots Spearman ρ between the visible Elo order and the hidden true-skill order after every battle since the arena was created, so you watch the leaderboard's accuracy climb in real time instead of reading one static number.
- K-factor — how aggressively one battle moves a rating. High K reacts fast but stays noisy; low K is stable but slow to correct a wrong initial estimate.
- Skill spread σ — how far apart the hidden true skills are. A wide spread makes upsets rare and the curve climbs fast; a narrow spread makes battles closer to coin flips, so convergence is slower and noisier.
Real-world relevance: this exact pairwise-comparison + Elo-update loop is what turns millions of anonymous human "which reply is better?" votes into the single ranked leaderboard used to compare GPT, Claude, Gemini and other LLMs on Chatbot Arena.