The results: places, times, reaction times and splits

Swimmers sit in the order of their lanes; the splits are written under each time.

Swimming poolDrawn as: a swimming pool, 50 by 25 metres, with 8 lanes, lane ropes, the lane markings on the floor, starting blocks, touch panels, backstroke flags and a false start rope. Men's 200 m freestyle, final (made up). Lane 8: Jonas Berg (HEL), place 7, time 1:48.77, reaction time 0.72, splits 26.10, 53.55, 1:21.38, 1:48.77. Lane 7: Pavel Novak (FEN), place 6, time 1:48.21, reaction time 0.69, splits 26.01, 53.40, 1:21.02, 1:48.21. Lane 6: Ren Takahashi (DOR), place 4, time 1:47.15, reaction time 0.70, splits 25.80, 53.02, 1:20.40, 1:47.15. Lane 5: Mateo Varga (CAL), place 2, silver medal, time 1:46.48, reaction time 0.67, splits 25.55, 52.60, 1:19.95, 1:46.48. Lane 4: Ivo Lindqvist (AUR), place 1, gold medal, time 1:46.12, reaction time 0.64, splits 25.31, 52.28, 1:19.60, 1:46.12. Lane 3: Oskar Dahl (BOR), place 3, bronze medal, time 1:46.92, reaction time 0.61, splits 25.12, 52.30, 1:19.98, 1:46.92. Lane 2: Callum Rhodes (EST), place 5, time 1:47.80, reaction time 0.66, splits 25.70, 52.95, 1:20.66, 1:47.80. Lane 1: Daniel Okoro (GAR), place 8, time 1:48.90, reaction time 0.74, splits 26.20, 53.71, 1:21.45, 1:48.90.8877665544332211Jonas BergHEL8Pavel NovakFEN7Ren TakahashiDOR6Mateo VargaCAL5Ivo LindqvistAUR4Oskar DahlBOR3Callum RhodesEST2Daniel OkoroGAR171:48.77RT 0.7226.10 53.55 1:21.38 1:48.7761:48.21RT 0.6926.01 53.40 1:21.02 1:48.2141:47.15RT 0.7025.80 53.02 1:20.40 1:47.1521:46.48RT 0.6725.55 52.60 1:19.95 1:46.4811:46.12RT 0.6425.31 52.28 1:19.60 1:46.1231:46.92RT 0.6125.12 52.30 1:19.98 1:46.9251:47.80RT 0.6625.70 52.95 1:20.66 1:47.8081:48.90RT 0.7426.20 53.71 1:21.45 1:48.90Men's 200 m freestyle, final (made up)

The picture above was drawn when the docs were built. The script below draws it again with the published package.

import { drawKyogijo } from "@johnmorrisdotca/kyogijo-stadiums";

const flag = (a, b) => '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 20"><rect width="30" height="20" fill="' + a + '"/><rect y="7" width="30" height="6" fill="' + b + '"/></svg>';
const swimmers = [
  [4, "Ivo Lindqvist", "AUR", "#0f7a7a", "#f4f0e4", 0.64, [25.31, 52.28, 79.6, 106.12]],
  [5, "Mateo Varga", "CAL", "#6b2d5c", "#f2c230", 0.67, [25.55, 52.6, 79.95, 106.48]],
  [3, "Oskar Dahl", "BOR", "#8a2d4b", "#e8e2cf", 0.61, [25.12, 52.3, 79.98, 106.92]],
  [6, "Ren Takahashi", "DOR", "#c2410c", "#14233f", 0.7, [25.8, 53.02, 80.4, 107.15]],
  [2, "Callum Rhodes", "EST", "#3a2d6b", "#e8e2cf", 0.66, [25.7, 52.95, 80.66, 107.8]],
  [7, "Pavel Novak", "FEN", "#1f6b3c", "#f2c230", 0.69, [26.01, 53.4, 81.02, 108.21]],
  [8, "Jonas Berg", "HEL", "#7a2a8c", "#f2c230", 0.72, [26.1, 53.55, 81.38, 108.77]],
  [1, "Daniel Okoro", "GAR", "#14233f", "#f2a900", 0.74, [26.2, 53.71, 81.45, 108.9]],
].map(([lane, name, abbr, a, b, reaction, splits]) => ({ lane, name, abbr, flag: flag(a, b), reaction, splits }));
const svg = drawKyogijo({ sport: "swimming", pool: { look: "water", race: { event: "Men's 200 m freestyle, final (made up)", distance: 200, swimmers: swimmers } } });

This page imports the package from jsDelivr (major version 0), which serves only versions that have been published to npm. A feature added after the last release is not in it: the page then keeps the picture above and says why. The docs were built from version 0.6.1.