OVERSCANUI KIT
no button at all a worn bezel with weight channels do not converge zero depth instrumented, full of smoke a field of real characters a camera looking out additive, so no shadow hairlines, no new shader no raster, so no scanlines

It does not close over a gap. A shape display puts each parameter on a spoke so a problem is seen as a change of shape before any number is read, and every spoke is scaled through its own normal band so that normal is a regular shape: a deviation is a spike or a dent. A spoke with no data, or invalid data, leaves the polygon open, because closing through zero or straight across its neighbours would draw a shape that can look normal with a parameter missing. Unvalidated and stale spokes draw dashed, and a configured value is marked apart from the value observed.

demo/polygon.html, from this page
import 'overscan'
import 'overscan/overscan.css'

<ov-polygon
  src="models/polygon-normal.json"
  max-age="10"
></ov-polygon>
all valid, all normal
one spoke no data
one spoke invalid
one unvalidated, one stale
two outside normal
configured beside observed
variation: src="models/polygon-gap.json"
import 'overscan'
import 'overscan/overscan.css'

<ov-polygon
  src="models/polygon-gap.json"
  max-age="10"
></ov-polygon>
terminal
variation: src="models/polygon-invalid.json"
import 'overscan'
import 'overscan/overscan.css'

<ov-polygon
  src="models/polygon-invalid.json"
  max-age="10"
></ov-polygon>
industrial
variation: src="models/polygon-doubt.json"
import 'overscan'
import 'overscan/overscan.css'

<ov-polygon
  src="models/polygon-doubt.json"
  max-age="10"
></ov-polygon>
cyber
antiseptic
esper
neo
machina
holo
aegis
vector