These are counts in one KanjiVG snapshot. A correlation is not a rule.

Once a stroke has been drawn, a position where the letter-stripped types agree is indigo, and a position where they differ is cinnabar. Click a plate to replay. With reduced motion the finished character stays still, and the colors stay. The colors are optional data-type-agreement. A plate without it is not recolored. The draw timings are unchanged.

On this page

How agreement is counted

A stroke is a path whose id contains -sN. The order is that numbering. kvg:type is read as the file writes it. A trailing run of ASCII letters on a slash-separated piece is a variant letter. The letter-stripped form deletes those letters and keeps the slash. ㇑a and ㇑ are one string. ㇐b/㇔ is ㇐/㇔.

Two characters are a pair when they are not the same character and they have the same stroke count n. The pair is unordered. For each position k from 1 through n, the position agrees when the letter-stripped types are the same string. Agreement is the number of agreeing positions divided by n.

The count is taken for n from 2 through 12. A character of one stroke, and a character of more than 12 strokes, is not paired. Those characters are counted so the rows add to the jōyō list.

Pair
An unordered pair of distinct jōyō characters with the same stroke count n, for n from 2 through 12. The number of pairs at n is C(characters, 2), that is characters × (characters − 1) / 2.
Agreement
The number of positions k, from 1 through n, where the letter-stripped types are equal, divided by n. It is a share from 0 to 1.
Letter-stripped type
The kvg:type string with a trailing run of ASCII letters removed from each slash-separated piece. The slash stays. The helper is normalize in tools/stroke_types.py, the same deletion as tools/openings.py.
Tenth
Ten bins of width 0.1. Bin b, for b from 0 through 8, is agreement in [b/10, (b+1)/10). Bin 9 is agreement in [0.9, 1]. In integers the bin is (matches × 10) // n, and an agreement of 1 is bin 9. An agreement of 0 is bin 0.
Every position
The letter-stripped sequences are equal, so the agreement is 1. The order-as-meaning page lists pairs whose written sequences are equal, letters kept. Those pairs are a subset of the pairs that agree at every position.
Missing type
A stroke with no kvg:type is the empty string. The empty string agrees only with another empty string. The character stays in its stroke-count row.

Which characters

Set Characters

Strokes Characters

Characters and pairs

Strokes Characters Pairs C(characters, 2) Matches / positions Mean

One pair, stroke by stroke

k Written, first Written, second Stripped, first Stripped, second Agrees

The agreement, in tenths

Strokes [0.0, 0.1) [0.1, 0.2) [0.2, 0.3) [0.3, 0.4) [0.4, 0.5) [0.5, 0.6) [0.6, 0.7) [0.7, 0.8) [0.8, 0.9) [0.9, 1] Pairs

Agreement at every position

Strokes Every position Written sequence Letter only

The most similar pairs

Strokes Rank Pair Agreement Letter-stripped types

The least similar pairs

Strokes Rank Pair Agreement Letter-stripped types

Plates

KanjiVG · CC BY-SA 3.0

What this shows

Stroke diagrams: KanjiVG, Ulrich Apel et al., CC BY-SA 3.0, from commit 70a0b7ae0c18ceb5cb358274b029cce0234a43bc of github.com/KanjiVG/kanjivg. The plate files are unmodified copies in site/assets/kanjivg/. Jōyō index: the list used on the Gallery.