The figure library
No figure on this site is a drawing that was made once and saved. Each one is a function: it takes parameters and returns SVG, so the same generator produces the pure 3:2 fifth and the equal-tempered one without either being redrawn, and the dissonance curve of a string and of a clarinet without anyone deciding by hand where the dips should fall.
That is the reason the collection can keep growing without the illustrations drifting apart. A generator is written once, checked once, and every essay that calls it inherits the same line weights, the same colour roles, the same behaviour in dark mode and the same synthesiser. There are 147 of them so far, called 3225 times across 490 essays.
Reuse is the number that decides whether any of this is sustainable, which is why it is published rather than kept in a plan. A generator written for one essay and never called again is a design failure and not a neutral cost. The count beside each name is how many essays instantiate it, and the phase ledger refuses to advance if the figures-per-generator ratio falls.
It is also the blast radius. Changing a generator changes every figure in its list at once, so that list is what has to be rebuilt and looked at before the change is believed — a bad shared helper once broke a hundred and eighty-one figures across four of these sites, and was caught only because somebody rebuilt immediately and knew where to look.
Pitch and tuning
16 generators
-
bearing-plan1 essay · audible -
cents-ruler9 essays · audible -
comma-ladder2 essays · audible -
comma-lattice1 essay · audible -
comma-spiral3 essays · audible -
edo-map6 essays · audible -
fifths-chain14 essays · audible -
key-colour4 essays · audible -
meantone-family2 essays · audible -
pitch-drift2 essays · audible -
pitch-resolution4 essays · audible -
pitch-standards14 essays · audible -
system-requirements1 essay · audible -
temperament-spread3 essays · audible -
tuning-comparison8 essays · audible -
vibrato-trace8 essays · audible
Intervals and chords
14 generators
-
beats26 essays · audible -
category-boundaries16 essays · audible -
chord-census4 essays · audible -
chord-spread2 essays · audible -
critical-band9 essays · audible -
dissonance-curve25 essays · audible -
harmonic-lattice4 essays · audible -
interval-ratio2 essays · audible -
interval-syntax2 essays · audible -
keyboard5 essays · audible -
missing-fundamental5 essays · audible -
partial-overlap8 essays · audible -
subset-scan4 essays · audible -
voicing-roughness11 essays · audible
Scales and modes
11 generators
-
circle-of-fifths5 essays · audible -
even-necklace2 essays · audible -
generic-specific4 essays · audible -
interval-map4 essays · audible -
key-distance5 essays · audible -
mode-compare13 essays · audible -
mos-series5 essays · audible -
scale-necklace8 essays · audible -
scale-triads4 essays · audible -
tonic-weight1 essay · audible -
universe-census1 essay · audible
Harmony and voice leading
12 generators
-
chord-segmentation13 essays · audible -
chord-shape4 essays · audible -
comma-drift2 essays · audible -
criteria-plane1 essay · audible -
drift-policy1 essay · audible -
key-fit24 essays · audible -
part-writing4 essays · audible -
progression-path16 essays · audible -
triad-graph3 essays · audible -
tritone-resolution1 essay · audible -
vl-ranking2 essays · audible -
voice-leading5 essays · audible
Rhythm and metre
13 generators
-
clock-model6 essays · audible -
euclid-family16 essays · audible -
metre-candidates15 essays · audible -
metre-tree11 essays · audible -
metric-weights7 essays · audible -
microtiming9 essays · audible -
moment-wall2 essays · audible -
polyrhythm1 essay · audible -
rate-continuum3 essays · audible -
resultant-grid3 essays · audible -
rhythm-cycle16 essays · audible -
swing-curve6 essays · audible -
swing-timeline1 essay · audible
Timbre and acoustics
16 generators
-
band-decay6 essays · audible -
clarity-window3 essays · audible -
critical-distance2 essays · audible -
duet-roles13 essays · audible -
envelope17 essays · audible -
formant-filter6 essays · audible -
harmonic-series22 essays · audible -
inharmonic-partials5 essays · audible -
ltas-gap2 essays · audible -
orchestration15 essays · audible -
railsback-curve4 essays · audible -
reverb-time5 essays · audible -
room-modes3 essays · audible -
schroeder-crossover3 essays · audible -
spectrum13 essays · audible -
unison-spread7 essays · audible
Instruments
19 generators
-
bar-modes4 essays · audible -
bar-tuning4 essays · audible -
body-filter6 essays · audible -
bore-modes14 essays · audible -
bore-shape18 essays · audible -
bowed-string13 essays · audible -
directivity8 essays · audible -
end-correction5 essays · audible -
fingerboard2 essays · audible -
fret-error1 essay · audible -
hammer-spectrum14 essays · audible -
reed-valve6 essays · audible -
speaking-time8 essays · audible -
string-excitation11 essays · audible -
string-scaling4 essays · audible -
struck-partials3 essays · audible -
tone-holes8 essays · audible -
voice-source5 essays · audible -
wolf-coupling5 essays · audible
Perception and the listener
19 generators
-
consonance-models1 essay · audible -
distortion-products10 essays · audible -
fusion-cue9 essays · audible -
head-geometry9 essays · audible -
image-room6 essays · audible -
limen-curve16 essays · audible -
loudness-contours7 essays · audible -
loudness-sum17 essays · audible -
masking-pattern13 essays · audible -
octave-stretch4 essays · audible -
p-centre11 essays · audible -
periodicity-acf1 essay · audible -
precedence-window6 essays · audible -
probe-profile11 essays · audible -
residue-candidates4 essays · audible -
resolvability3 essays · audible -
shifted-partials1 essay · audible -
stream-sequence3 essays · audible -
tempo-window11 essays · audible
Melody
3 generators
-
contour-class2 essays · audible -
melody-walk9 essays · audible -
walk-null2 essays · audible
Notation
4 generators
-
notation-collapse3 essays · audible -
page-space10 essays · audible -
staff-map6 essays · audible -
stave7 essays · audible
Form in time
20 generators
-
canon-grid1 essay · audible -
causal-form3 essays · audible -
chord-rate4 essays · audible -
closure-vector15 essays · audible -
density-arc1 essay · audible -
form-strip4 essays · audible -
hyper-grid2 essays · audible -
invariance-dial1 essay · audible -
key-path3 essays · audible -
lag-profile4 essays · audible -
novelty-scan5 essays · audible -
phase-orbit1 essay · audible -
phrase-clock4 essays · audible -
reverb-overlap2 essays · audible -
ritard-curve3 essays · audible -
section-proportion6 essays · audible -
silence-length1 essay · audible -
structure-map6 essays · audible -
tune-strip1 essay · audible -
unit-fragmentation1 essay · audible