For exact values to compare or export. Use a Table.
Series colours
Assign series in this order, and never skip a stop. Green, amber and red mean status, so keep them for verdicts and thresholds.
1 · #1877F2blue-1000
2 · #C33394magenta-700
3 · #6E23C9violet-800
4 · #0692BCteal-700
5 · #7B238Dpurple-900
Name two or more series in a Legend. A lone series needs none, because the card title names it.
Answer first
Lead with the latest reading, its change over a named period, and a verdict. The band and threshold are labelled in the right gutter, clear of the data.
A bare track is idle, and every other state has a fixed colour. Show a legend, and name any fault in text too.
Accessibility
Pass ariaLabel with a one-sentence summary; the state is added to it. Line charts and stacks are one tab stop, and a screen reader hears each reading as the arrow keys move.
Key
What it does
Tab
Moves focus to the plot.
← / →
Steps to the previous or next reading. In a stack, Shift moves ten.
Home / End
Jumps to the first or last reading.
Escape
Hides the readout.
Props
Every engine takes times, domain, state, answer and thresholds. A reading is a number, or null for none.
A 270° dial. The track holds the value arc in the colour of the band the reading falls in, and a white marker ringed in that colour. A thin ring outside the track shows each band’s colour, and every band edge is labelled.
4.6
Delta-T · 160
Delta-T
The spray window. Green is the preferred 2–8 band, amber sits either side of it and red starts at 10.
2.0
2.0 · on the edge
4.6
4.6 · preferred
11.5
11.5 · not optimal
A reading on a band edge takes the lower band, so 2.0 reads amber.
Temperature
Pass your own zones for another scale. Temperature runs 0–50 °C in four bands, and cold takes teal so it doesn’t share amber with hot.
6.4°C
6.4 · 0–10 band
14.2°C
14.2 · 10–30 band
43.1°C
43.1 · 40–50 band
Soil moisture at depth
One rail per probe depth, shallowest first, so the rails sit the way the profile sits in the ground.
8″ Soil Moisture3:00 pm
8.6%VWC
16″ Soil Moisture2:00 pm
16.2%VWC
24″ Soil Moisture2:00 pm
18.8%VWC
32″ Soil Moisture1:10 pm
27.1%VWC
48″ Soil Moisture1:30 pm
40.0%VWC
Refill pointBelow refillBelow stressset per depth
The white marker is each depth’s refill point. Set each row’s colour to its status: amber below refill, red below stress.
Wind
A full circle, because 359° and 1° are neighbours. Only the direction indicator is blue.
Bearing
The centre carries the cardinal and the bearing in text, so the needle never has to be read alone.
Fire danger
A half arc, because a fire index reads as how far up the scale, not where in a band. The rating is named in text under the number.
35FFDI
High
0150+
Rating
The arc fills to 150. Readings above 150 keep a full arc and print the actual figure.
Content
Name the band in text beside the dial: “Preferred for spraying”.
Put the unit in unit so it sets smaller than the reading.
Use display to round the reading without moving the arc.
Write soil depths with the double prime: 8″, 16″.
Accessibility
Give each dial an ariaLabel naming the reading and its band, so it’s heard as one image.
The soil rail shows status by colour alone, so name it in text too.
The compass announces its bearing and cardinal.
The fire arc is a meter capped at 0–150. Its value text carries the actual index and rating.
Under reduced motion the arc and the needle start at their end state.
Props
Prop
Type
Default
Description
value
number
—
The reading. The arc clamps to min and max.
min / max
number
—
Scale ends: 0–20 for Delta-T, 0–50 for Temperature.
zones
GaugeZone[]
—
Bands as from, to and color. DELTA_T_ZONES or TEMP_ZONES.
size
number · 'sm' | 'md' | 'lg'
160 · 150 · md
Px for dial and compass. WFireIndex takes sm, md or lg.
trackW
number
22
Track thickness in viewBox units.
contained
boolean
false
Pads the box so edge labels stay inside it.
unit
string
—
WGaugeDial. Suffix after the reading, such as °C.
display
string
—
Printed reading, when it differs from value.
ariaLabel
string
—
Names the dial and its band for screen readers.
animate
boolean
false
Sweeps the arc, or springs the needle, on mount.
replay
number
0
Increment to run the entrance again.
bearing
number
210
WCompass. Needle direction in degrees.
speed / unit
string
—
WCompass. Centre label and sub-label, such as SSW, 210°.
idPrefix
string
—
WCompass. Unique per page, for its shadow filter.
rows
SoilDepth[]
—
WSoilMoisture. Depth, time, fill, refill point, value, colour.
fdi
number
—
WFireIndex. The index reading. Sets the rating and arc.
indexType
'FDI' | 'FFDI' | 'GFDI'
'FDI'
WFireIndex. Index name printed under the reading.
showValue
boolean
true
WFireIndex. Prints the reading and index name inside the arc.