Hoops Analytics

Mini-hoop shooting sessions, shot by shot

Last session Thu, Apr 16 · 2 sessions · 68 shots

Made / Attempts49/68
Field goal72.1%
Best streak30

over 2 sessions · 49 of 68 shots went in · 10.2% of 49 recorded makes were swishes · 27 of 95 stored rows are hidden

Every number on this page is computed from the 68 shots stored in the database for the 2 sessions below. Shots are sent to the ingest API by the capture device; the page re-reads them while you watch. Source and API on GitHub

27 further rows are stored but excluded from every number here, and they are never deleted: 23 real shot, device clock was wrong (stamped 1970); awaiting a decision on re-dating; 4 synthetic: created by a platform smoke test, not a real shot.

Every shot, in order

One mark per stored row. Nothing here is smoothed, averaged or inferred.

Apr 15 · shootit-ios-manual-test42 / 56
Apr 167 / 12

One mark per stored shot, oldest first. Filled marks went in; outlined marks did not. A run of filled marks is a run of makes.

Where the ball crossed the rim

Shown only for shots whose position was measured against a rim the tracker had located.

No shots recorded with rim positions yet.

The camera tracker records these: it finds the rim in the frame and measures where the ball crossed the plane of the rim, in rim widths left or right and short or long. Until a session is recorded that way there is nothing here that could honestly be drawn on a picture of a hoop.

The 68 earlier shots on this page were stored as positions in the camera frame, which say nothing about where the ball was relative to the rim, so they are not plotted here.

Progress

One bar per session, oldest first. Bar height is attempts; the filled part is makes.

75.0%
Apr 15 · shootit-ios-manual-test42/56
58.3%
Apr 167/12

Streaks

Makes in a row. A run never carries from one session into the next.

30
Apr 15 · shootit-ios-manual-test
7
Apr 16

The record is 30 makes in a row. Each column is one session's best run; the filled part is the run it finished on. A run never carries from one session into the next.

Consistency

100 minus twice the spread of the sessions' field-goal percentages.

Not reported yet. A spread needs a sample: this figure is withheld until there are at least 3 sessions to compare, and there are 2.

Session history

#DateSessionAttemptsMadeFG%Best streak
02Thu, Apr 16shootit-ios-manual-test12758.3%7×
01Wed, Apr 15shootit-ios-manual-test564275.0%30×
How these are calculated
Field goal percentage (FG%)
Made shots divided by attempts, over the rows shown. Nothing is weighted.
Best streak
The longest run of makes inside a single session. A make at the end of one session and a make at the start of the next are not a run of two, so streaks are never chained across sessions.
Swish rate
Swishes divided by the makes that actually recorded whether they were a swish. A missed shot stores no swish value at all, which means unknown rather than “not a swish”, so misses are in neither the numerator nor the denominator.
Consistency
100 minus twice the sample standard deviation of the sessions' FG%. Withheld below 3 sessions, because the spread of one or two numbers is not a measure of consistency.
Hidden rows
Rows the database keeps but no statistic uses. Nothing is ever deleted: a row is flagged with the reason it cannot be trusted, and the counts above say how many and why.
Rim positions
Only shots recorded with a measured rim-relative crossing point can be drawn on a picture of a rim. Earlier shots stored a position in the camera frame, which carries no information about where the ball was relative to the hoop.